레트로의 유니티 6 게임 프로그래밍 에센스 (3판)
저자

이제민

저자:이제민
2,000명이상의유료온라인수강생을가진게임개발트레이너다.해외온라인강의플랫폼유데미(Udemy)의베스트셀러유니티강의「retr0의유니티게임프로그래밍에센스」를제작했다.이는현재까지유데미에서가장평점과판매량이높은한국어강의다.또한〈메이드아가씨〉등유명서브컬처게임을만든독립개발자이기도하다.유튜브에무료게임프로그래밍교육채널'retr0'를운영중이다.

목차


1부유니티준비하기
1장유니티준비하기
1.1유니티엔진은무엇인가
1.2개발환경구성
1.3첫프로젝트생성하기
1.4마치며

2장유니티인터페이스둘러보기
2.1기존프로젝트열기
2.2레이아웃변경하기
2.3메인창
2.4씬편집툴
2.5게임오브젝트편집하기
2.6씬기즈모
2.7씬플레이버튼
2.8유니티클라우드버튼
2.9마치며

3장유니티엔진이동작하는원리
3.1상속과재사용
3.2컴포넌트패턴:조립하는게임세상
3.3유니티에디터에서의컴포넌트
3.4메시지와브로드캐스팅
3.5마치며

2부C#프로그래밍
4장C#프로그래밍시작하기
4.1변수개념잡기
4.2함수(메서드)개념잡기
4.3첫스크립트작성하기
4.4코딩기본규칙
4.5변수연습하기
4.6메서드연습하기
4.7제어문
4.8배열
4.9마치며

5장게임오브젝트제어하기
5.1클래스와오브젝트
5.2C#클래스만들기
5.3참조타입
5.4변수로컴포넌트사용하기
5.5마치며

3부탄막슈팅게임_닷지
6장닷지:플레이어제작
6.1씬구성하기
6.2카메라설정하기
6.3플레이어제작
6.4플레이어스크립트생성
6.5사용자입력감지
6.6플레이어사망처리
6.7PlayerController스크립트개선하기
6.8입력매니저
6.9마치며

7장닷지:탄알제작
7.1탄알게임오브젝트준비
7.2탄알스크립트준비하기
7.3탄알의충돌처리
7.4탄알생성기준비
7.5탄알생성기스크립트만들기
7.6마치며

8장닷지:게임매니저와UI,최종완성
8.1프로젝트정리
8.2바닥회전
8.3게임UI제작
8.4게임매니저제작
8.5빌드하기
8.6마치며

4부공간
9장방향,크기,회전
9.1벡터수학
9.2유니티C#벡터
9.3쿼터니언
9.4마치며

10장공간과움직임
10.1유니티공간
10.2오브젝트의이동과회전
10.3벡터연산으로평행이동구현하기
10.4마치며

5부2D러너게임_유니런
11장유니런:플레이어제작
11.1유니티2D프로젝트열기
11.2시작지점만들기
11.3캐릭터스프라이트편집
11.42D캐릭터게임오브젝트준비
11.5캐릭터애니메이션준비하기
11.6PlayerController스크립트
11.7마치며

12장유니런:배경스크롤링과게임매니저
12.1배경추가하기
12.2움직이는배경과발판
12.3게임UI만들기
12.4게임매니저만들기
12.5마치며

13장유니런:발판반복생성과게임완성
13.1발판만들기
13.2발판생성기만들기
13.3빌드하기
13.4마치며

6부탑다운슈터게임_좀비서바이버
14장좀비서바이버:레벨아트와플레이어준비
14.1프로젝트구성
14.2유니버설렌더파이프라인
14.3레벨아트와라이팅설정
14.4플레이어캐릭터와애니메이션구성
14.5캐릭터이동구현
14.6시네머신추적카메라구성하기
14.7마치며

15장좀비서바이버:총과슈터
15.1인터페이스
15.2총게임오브젝트준비
15.3GunData스크립트
15.4Gun스크립트
15.5슈터만들기
15.6마치며

16장좀비서바이버:생명과좀비AI
16.1다형성
16.2LivingEntity기반클래스
16.3플레이어체력UI
16.4PlayerHealth스크립트
16.5내비게이션시스템과좀비준비
16.6Zombie스크립트
16.7마치며

17장좀비서바이버:최종완성과포스트프로세싱
17.1HUDCanvas와UI매니저
17.2게임매니저
17.3좀비생성기
17.4아이템생성
17.5포스트프로세싱
17.6최종빌드
17.7마치며

7부네트워크게임_퐁
18장퐁:네트워크이론과메뉴구현
18.1네트워크동기화
18.2게임서버의종류
18.3네트워크권한분리
18.4프로젝트준비하기
18.5초기화씬구성하기
18.6메뉴구성하기
18.7마치며

19장퐁:네트워크로비구현
19.1네트워크오브젝트컴포넌트
19.2로비구현
19.3마치며

20장퐁:네트워크게임플레이구현
20.1인게임씬
20.2위치동기화컴포넌트
20.3플레이어패들구현하기
20.4공구현하기
20.5게임매니저구현하기
20.6빌드와테스트하기
20.7마치며

부록A안드로이드빌드
A.1안드로이드장치의개발자모드활성화
A.2안드로이드SDK준비
A.3유니티와안드로이드SDK연동확인
A.4안드로이드빌드설정
A.5빌드하기

부록BiOS빌드
B.1개발환경준비
B.2유니티iOS빌드설정
B.3Xcode에서iOS빌드

부록C어드레서블시스템
C.1어드레서블시스템이란
C.2어드레서블시스템활성화하기
C.3어드레서블프로필
C.4에셋을어드레서블로지정하기
C.5에셋그룹과어드레서블지정
C.6어드레서블설정
C.7어드레서블시스템코딩하기
C.8어드레서블콘텐츠빌드하기
C.9기타

출판사 서평

3판에서달라진점
1.유니티버전업데이트
-유니티2021→유니티2023.2&유니티6베타로변경
-스크린숏및코드전면수정(유니티6의새로운UI/기능반영)
2.멀티플레이어게임(Pong)추가
-기존개정판에는없던네트워크멀티플레이어게임구현추가
-유니티넷코드를사용하여RPC,동기화,클라이언트-서버구조학습가능
3.어드레서블(AssetAddressables)&패치시스템추가
-콘텐츠업데이트및원격배포시스템구현방법추가
-기존에는없던고급사용자용패치시스템가이드포함(게임업데이트방식설명)
4.AI및내비게이션시스템강화
-기존에는없던좀비AI,내비게이션시스템,레이캐스트활용타격감지기능추가
-적(Enemy)AI구현방식상세설명(적의이동,공격패턴등)
5.UI(UGUI)개선&후처리(Post-Processing)추가
-유니티UI시스템최신버전반영(UGUI개편)
-후처리(Post-Processing)기법추가→게임그래픽품질향상가능

★이책의특징
입문자와비전공자를배려한진행순서
이책은유니티는물론프로그래밍에대한지식이전혀없는입문자와비전공자,아티스트등을대상으로합니다.따라서비전공자가쉽게이해할수있는순서로구성되어있습니다.수학적내용은전문적인단어대신비전공자가이해할수있도록풀어쓴예시를사용합니다.

수많은예시와그림
어려운개념은비유와예시로,복잡한서술은그림으로대체했습니다.700장이상의그림으로실습과정을놓치지않고따라할수있습니다.

올인원패키지
유니티의동작원리,C#프로그래밍,객체지향,선형대수,UI,모바일,후처리,네트워크,프로그래밍은물론게임개발에필요한모든요소를기초부터고급까지충실하게다룹니다.또한패치시스템을구현하고싶은고급사용자를위한어드레서블완벽가이드부록을제공합니다.이책하나로C#프로그래밍입문서와게임엔진입문서를모두대체할수있습니다.

★이책의구성
이책은총7부로구성되어있습니다.1부와2부에서는유니티와코딩을당장이해하는데가장필수적인핵심을빠르게배웁니다.실습프로젝트를진행하는3부,5부,6부,7부는장르별로게임을하나씩완성하면서실습을통해이론을이해합니다.실습프로젝트는기존지식만으로해결하기어려운문제를새로운방법으로돌파하는방식으로진행합니다.4부에서는비전공자입장에서게임개발에필요한수학적기반을배우고부록에서는모바일빌드와어드레서블을통한콘텐츠관리를다룹니다.

1부:유니티준비하기
유니티를준비하고,유니티동작원리와인터페이스를배웁니다.
유니티개발환경을준비하고맛보기프로젝트를만듭니다.게임오브젝트와컴포넌트의원리
와동작을이해합니다.게임엔진의구조와개발방식을이해합니다.

2부:C#프로그래밍
왕초보자입장에서C#프로그래밍과객체지향을배웁니다.
코딩원리와객체지향을즉시이해할수있는그림예시로설명합니다.C#스크립트를직접
작성하면서필요한대부분의C#문법을익힙니다.1부에서살펴본유니티의동작원리가C#의객체지향과어떻게맞물리고,스크립트가어떻게게임오브젝트와컴포넌트를통제할수있는지이해합니다.

3부:탄막슈팅게임-닷지
3D탄알피하기게임을만듭니다.
키보드조작으로공을굴리는작은예제에서시작하여탄알,UI,게임매니저를만들고최종빌드까지게임완성에필요한모든부분을진행합니다.또한주기적으로탄알생성을반복하는방법,점수를저장하는방법을배웁니다.
플레이어의입력을받아힘과속도를제어하는방법을배웁니다.입력매니저와시간간격같은기초개념이꼭필요한이유를현실사례로설명합니다.

4부:공간
공간,속도,회전을통제하기위한선형대수를배웁니다.
벡터수학,지역공간과전역공간,회전에사용되는쿼터니언을배우게됩니다.비전공자와선형대수를따로공부할여유가없는개발자들을위해복잡한증명과정은직관적이고간결한그림으로대체했습니다.또한수학적지식을이론이아닌실제코드와함께사용법위주로빠르게이해합니다.

5부:2D러너게임-유니런
발판이무한랜덤생성되는2D러너게임을개발합니다.
2D애니메이션을만드는방법,캐릭터의상황에따라적절한애니메이션을재생하는방법을배웁니다.오브젝트풀링을구현하여배경과장애물을무한반복배치하는방법을배웁니다.또한디자인패턴중하나인싱글턴을직접구현하고사용합니다.

6부:탑다운슈터게임-좀비서바이버
몰려오는인공지능좀비들을총으로쏘는탑다운슈터게임을제작합니다.
IK와애니메이션마스크를구현합니다.점수와인공지능적소환시스템과인게임UI를만듭니다.유니티의내비게이션시스템을사용하여인공지능을구현하며,레이캐스트로정확한총알충돌을구현합니다.C#인터페이스,이벤트,람다표현식을사용하여플레이어와인공지능적의대미지처리코드를간결하게줄이는방법을배우게됩니다.후처리를사용하여영상미를구현합니다.

7부:네트워크게임-퐁
유명고전게임을2인네트워크멀티플레이어게임으로제작합니다.
API와상관없이모든종류의네트워크게임에공통적으로필요한이론을배웁니다.유니티네트워크라이브러리인넷코드를통해로비,위치동기화,RPC등을구현합니다.동기화절차와클라이언트와호스트,로컬과원격,조작권한에대해배웁니다.

부록
유니티게임을안드로이드와iOS로빌드하는방법을배웁니다.
어드레서블에셋시스템을사용하여콘텐츠를관리하고원격배포하는방법을배웁니다.

★관련서적(제목+ISBN)
-소플의처음만난AWS/9791169213042
-소플의처음만난리액트2판/9791169211697