LEVELIT 유니티와 OpenAI API로 만드는 인공지능 NPC (반양장)

LEVELIT 유니티와 OpenAI API로 만드는 인공지능 NPC (반양장)

$36.00
Description
AI와 게임이 만나면 NPC가 숨을 쉰다고?
유니티에 ChatGPT, Whisper, DALL-E, TTS 같은 최신 생성형 AI를 자연스럽게 얹어, 말을 걸면 반응하고 상황에 맞게 움직이는 NPC를 만드는 흐름을 담은 책이다. 실제 게임 안에서 대화가 흘러가고, 목소리가 붙고, 이미지도 바로 만들어지는 과정을 차근차근 따라갈 수 있게 꾸몄다. 유니티와 C# 기본만 알고 있어도 충분히 따라갈 수 있어 초보 개발자는 부담 없이 학습할 수 있고, 실무자는 새로운 아이디어를 얻기 좋다. 이 책과 함께 생동감 넘치는 게임 세계를 만들어보자.
저자

박재환

라인,SNOW,네이버제트에서다양한메타버스와가상세계를제작하며사람과공간이교감하는디지털경험을만들어왔다.이과정에서인공지능을활용한가상캐릭터개발에관심을가지게되었고,AI를통한인간-환경상호작용(HCI)연구를이어오고있다.유니티1인개발로〈SeektheDifference〉앱을출시했으며,2017년에는《디자이너를위한프레이머》(에이콘출판사,2017)를출간해비개발자도손쉽게코드를통해웹과앱을제작할수있는방법을제시했다.지금은현대자동차에서ConnectedCarService앱을제작하고있다.또한AR·VR환경과AI를결합한새로운사용자경험을연구하고있다.

목차

추천사ix
베타리더후기xiii
오프닝xiv
튜토리얼xvi
학습가이드xxii
로드맵xxiv

LEVEL1대표AIAPI비교분석1
1.1생산성향상에도움을주는AI2
__1.1.1생성형AI서비스2
__1.1.2이미지생성AI8
__1.1.3영상생성AI9
__1.1.4코딩자동생성AI11
1.2AIAPI의특징과비용15
__1.2.1OpenAIAPI15
__1.2.2GoogleAIAPI16
__1.2.3MetaLLaMAAPI17
__1.2.4ClaudeAPI18
__1.2.5NaverClovaAIAPI18

LEVEL2TextgenerationAPI를사용하여인공지능대화형NPC구현하기21
2.1OpenAIAPI알아보기22
__2.1.1GPT모델22
__2.1.2OpenAI에서제공하는API모델23
2.2OpenAIAPI시작하기25
__2.2.1OpenAI계정만들기25
__2.2.2API키발급받기26
__2.2.3APIKey토큰비용충전하기27
__2.2.4개발환경준비28
2.3Unity시작하기29
__2.3.1Unity허브설치하기29
__2.3.2Unity계정생성및라이선스획득하기30
__2.3.3Unity에디터버전설치하기30
__2.3.4Unity3D프로젝트생성하기31
__2.3.5예제리포지터리사용하기32
2.4Unity에서OpenAIAPI텍스트생성예제실행하기34
__2.4.1C#스크립트파일생성36
__2.4.2네임스페이스선언36
__2.4.3변수선언37
__2.4.4요청코루틴정의38
__2.4.5JSON메시지구조선언38
__2.4.6JSON데이터인코딩39
__2.4.7WebRequest생성39
__2.4.8응답처리41
__2.4.9결과확인43
__2.4.10모델을변경하는방법45
2.5OpenAIAPI사용하기실전예제46
__2.5.1스크립트생성46
__2.5.2네임스페이스수정46
__2.5.3웹리퀘스트형식확인하기48
__2.5.4URL,apiKey변수만들기51
__2.5.5웹리퀘스트코루틴만들기51
__2.5.6웹리퀘스트발송하기54
__2.5.7에러핸들링60
__2.5.8응답데이터에서메시지추출62
__2.5.9코루틴함수작성하기66
__2.5.10UIManager스크립트작성68
__2.5.11UI에적용하기70
__2.5.12캐릭터애니메이션연결하기71

LEVEL3WhisperAPI사용하기77
3.1WhisperAPI소개78
__3.1.1WhisperAPI로할수있는것들79
__3.1.2Whisper모델별특징79
3.2WhisperAPI사용해보기82
__3.2.1Transcriptions엔드포인트사용하기82
__3.2.2Translation엔드포인트사용하기87
__3.2.3타임스탬프사용하기89
__3.2.4용량제한하기91
__3.2.5Whisper프롬프트사용하기93
__3.2.6GPT후처리적용하기96
3.3WhisperAPI사용하기실전예제101
__3.3.1Unity에서WhisperAPI로음성인식해보기101
__3.3.2음성인식을활용하여회의록을자동생성하는예제115
__3.3.3WhisperAPI와OpenAIAPI를사용하여번역기만들기125
3.4음성인식기반인공지능NPC상호작용구현하기133
__3.4.1프로젝트세팅하기135
__3.4.2AI프롬프트작성하기141
__3.4.3음성인식인공지능NPC실행하기142
__3.4.4확장가능성143

LEVEL4TTSAPI사용하기145
4.1TTS개요146
__4.1.1주요TTS서비스146
__4.1.2TTS의작동원리147
4.2OpenAITTS사용하기149
__4.2.1OpenAITTS가격정책149
__4.2.2주요엔드포인트149
__4.2.3입력과출력150
__4.2.4OpenAITTS사용제한사항151
__4.2.5샘플음성들어보기151
__4.2.6OpenAIAPITexttospeech엔드포인트사용하기152
4.3GoogleTTSAPI사용하기159
__4.3.1GoogleCloud가입하기159
__4.3.2GoogleCloudTTSAPI예제실행하기169
4.4TTSAPI사용하기실전예제178
__4.4.1OpenAITTSAPI활용예제178
__4.4.2GoogleTTSAPI사용예제189
__4.4.3TTS를활용한음성녹음기만들기201
__4.4.4음성내레이션이나오는인공지능NPC구현하기226

LEVEL5ImageGenerationAPI사용하기247
5.1OpenAIDALL-EAPI개요248
__5.1.1DALL-EAPI의Generations엔드포인트사용하기250
__5.1.2DALL-EAPI의Edits엔드포인트사용하기259
5.2ImageGenerationAPI사용하기실전예제267
__5.2.1이미지자판기만들기267
__5.2.2그림그려주는인공지능NPC만들기279

LEVEL6립싱크기술로구현하는음성기반인공지능NPC얼굴애니메이션291
6.1얼굴애니메이션을위한립싱크기술292
6.2음성스펙트럼을분석하여발음에따른애니메이션을만들어주는예제294
__6.2.1퀘스트295
__6.2.2예제에필요한준비물295
__6.2.3스크립트생성297
__6.2.4컴포넌트적용하기310
__6.2.5실행하기311
6.3오디오볼륨감지를활용한간단한립싱크애니메이션예제313
__6.3.1퀘스트314
__6.3.2예제에필요한준비물314
__6.3.3스크립트생성316
__6.3.4인공지능캐릭터준비하기319
__6.3.5컴포넌트연결하기321
__6.3.6실행하기322

LEVEL7인터랙션인공지능캐릭터만들기325
7.1인터랙션인공지능캐릭터만들기실전예제326
__7.1.1OpenAIManager.cs작성하기327
__7.1.2UIManager.cs작성하기331
__7.1.3OpenAITTS.cs작성하기331
__7.1.4SetMicrophone.cs작성하기332
__7.1.5SaveWav.cs작성하기332
__7.1.6WhisperManager.cs작성하기333
__7.1.7NPCManager.cs작성하기334
__7.1.8LipsyncSimpleController.cs작성하기335
__7.1.9UI및리소스연결하기336
__7.1.10인공지능NPC실행하기337
7.2인공지능NPC기능구현하기339
__7.2.1OpenAIActionManager.cs작성하기339
__7.2.2Manager컴포넌트등록345
__7.2.3실전완성코드346
__7.2.4실행하기348
7.3확장가능성349

LEVEL8프롬프트엔지니어링351
8.1프롬프트엔지니어링의장점352
8.2프롬프트엔지니어링기법354
__8.2.1제로샷프롬프팅354
__8.2.2퓨샷프롬프팅356
__8.2.3사고의사슬프롬프팅359
__8.2.4생각의나무프롬프팅361
__8.2.5후카츠식프롬프트프레임워크364
__8.2.6프롬프트캐싱367
8.3프롬프트캐싱이적용된인공지능NPC만들기실전예제373
__8.3.1OpenAIPromptCachingManager.cs스크립트작성하기375
__8.3.2UI및리소스연결하기379
__8.3.3실행하기381

LEVEL9AI의미래,그리고진화하는NPC385
9.1생성형AI의현주소와전환점386
__9.1.1AI에이전트의등장387
__9.1.2낮아지는AI진입장벽393
__9.1.3AI가결합된콘텐츠산업의재편395
__9.1.4산업에서실현되는AINPC사례396
9.2언어모델변경하기399

엔딩402
용어집403
찾아보기410

출판사 서평

게임에더몰입하게만드는생동감넘치는NPC를내손으로만들어봐요.이책은단순히OpenAIAPI를유니티에연동하는법을소개하는기술서가아니라,게임속캐릭터를플레이어와대화하고,기억하고,반응하는하나의존재로구현하는과정을안내하는실전가이드예요.

이책만의특별한점
주요AIAPI의특징과비용을비교하는단계부터시작해어떤기술을어떤상황에활용해야하는지감을잡도록돕고,이후GPT기반텍스트생성,Whisper음성인식,TTS음성출력,이미지생성까지이어지는흐름을하나의맥락으로학습할수있도록구성되어있어요.포션을모으고퀘스트를완료하면금세살아있는NPC를만날수있을거예요!

1.NPC의텍스트대화부터음성,이미지,표정애니메이션까지하나의흐름으로학습
대화형NPC구현을시작으로음성인식과음성출력,립싱크와얼굴애니메이션까지자연스럽게연결해요.각기술을따로익히는것이아니라실제게임속캐릭터를완성해가는과정으로학습하기때문에왜필요한지와어떻게활용되는지를직관적으로이해할수있어요.

2.실제프로젝트에바로적용가능한유니티중심실습구성
Unity6환경에서OpenAIAPI를연동해대화형NPC를만들고,코드와예제를단계적으로쌓아실제프로젝트에그대로활용할수있도록정리되어있어요.기능구현에그치지않고게임흐름과UX관점에서어떻게연결되는지도함께다뤄요.

3.NPC를상호작용하는존재로만드는설계방법제시
립싱크기술을활용한입모양과얼굴애니메이션,감정과음성볼륨에따라달라지는표정연출을통해NPC를단순한모델이아닌살아있는캐릭터처럼표현하는방법을설명해요.또한프롬프트엔지니어링과프롬프트캐싱을활용해플레이어의행동과대화를기억하고상황에맞게반응하는NPC설계기법도다뤄요.

이책은누가읽으면좋을까요?
●유니티에서살아있는NPC를만들고싶은개발자
●LLM과음성인식,TTS,이미지생성을게임에자연스럽게녹이고싶은기획자와디자이너
●AI기반게임이나인터랙티브콘텐츠를기획하고구현하려는독자

이책에서다루는내용은무엇인가요?
●OpenAI의TextgenerationAPI를유니티에연동하고챗봇구현하기
●WhisperAPI를활용해다국어음성인식기능을유니티에구현하기
●OpenAI의TTSAPI와GoogleTTSAPI를이용해유니티환경에서AI음성내레이션구현하기
●DALL-EAPI로AI이미지를생성하고이를유니티에서활용하기
●Lipsync기술을활용해AI캐릭터가실제말하는듯한얼굴애니메이션구현하기
●배운기술을통합하여고도화된인공지능NPC완성하기