티스토리 뷰


아군기체를 script 를 작성하면서 유니티 중요구성요소 및 C# 기본에 대해서 설명하다가(챕터7) 갑자기적기체 script는 언제만들었는지 책에서 지혼자 진행돼있고챕터가 넘어가면 마찬가지로 자기혼자 어느정도 진행돼있어 책만 보고 따라하기 참 애매합니다뭘 빼먹었나 앞장을 아무리 뒤져봐도 언제 만들어졌는지 모를 스크립트와 언제 선언된지 모를 변수..예제는 어디 꽁꽁숨겨져있는지 예제는 어디서 받으라는 다운로드링크 한줄 없고디지털북스 홈페이지 가입해야 자료실에서 겨우 다운받을수 있습니다변수나 메서드 선언시 네이밍 규칙도 엉망이고(어디선 변수명 맨앞자리를 대문자로 했다가 어디선 소문자였다가 등등)코드예제를 자세하게 써놓지 않고 대부분 설명으로 이루어져있어 책도 얇은편인데그 설명자체도 가독성이 굉장히 떨어집니다.본서는 엔진 및 게임개발에 전혀 모르는 독자가 읽는다고 가정했다는데 글쎄요..
최근 게임개발에 대한 관심이 높아지면서, 게임 개발용 엔진에 대한 대중의 호기심도 대폭 증가하였다. 그 중에서도 유티니 엔진은 전 세계의 수많은 개발자들이 가장 많이 선택하고 있는 게임 엔진이다. 때문에 우리나라에서도 많은 개발자들이 유니티에 관심을 가지고 꾸준히 공부하고 있다.

이 책은 유니티를 활용한 게임 개발에 관심 있는 초보자를 대상으로 서술되었다. 그리고 게임 개발에 대해 잘 몰라도, 유니티 프로그램이 어렵게만 느껴져도 책의 처음부터 끝까지 차근차근 따라 하다보면 게임의 기본적인 뼈대를 만들 수 있도록 구성되어 있다.

게임을 이루는 주요 요소들. 아군 만들기, 적군 만들기, 레이저 슈팅 기술, 게임 화면 전환과 상점에서 물건 구입하기 등 다양한 예제들을 통해 유니티를 활용한 게임 제작과 구현이 가능하도록 합니다. 뿐만 아니라 새로운 지식을 찾고자 하는 개발자들이 참고할 사항과 관련 사이트들에 대해서도 소개하고 있다. 혼자서 게임을 만들고자 하거나, 소규모 팀으로 게임을 제작하는 분들에게 많은 도움이 될 것이다.

거기에 한 걸음 더 나아가, 단순히 게임 개발에 대해서만 이야기하지 않고, 장차 어떤 게임을 만들 것인가? 게임 기획과 개발은 무엇인가?에 대한 저자 나름의 고찰도 담아 미래의 게임 기획자, 게임 프로그래머들에게 도움이 될 수 있는 조언을 아끼지 않았다.


목차
들어가기 전에 ● 003
서문 ● 003
본서의 활용 및 주의점 ● 003
본서의 구성 ● 004
본서에서 제작할 게임 예시 이미지 ● 005

CHAPTER 01. 게임의 개요 / 013
1.게임의 정의 ● 015
2.게임의 4대 구성요소 ● 016
①게임기획 ● 016
①-1.게임기획의 중요성 ● 016
①-2.게임기획의 분류 ● 019
②스토리 ● 019
③그래픽 ● 020
③-1.그래픽의 중요성과 한계 ● 020
③-2.그래픽의 분류 ● 020
③-3.그래픽 작업의 특성 ● 021
④프로그래밍 ● 022
④-1.프로그래밍은 게임의 필수조건 ● 022
④-2.프로그래밍의 분류 ● 022
④-3.프로그래밍 공부 방법 ● 023
⑤사용자 경험 ● 024
3.게임의 장르 ● 025

CHAPTER 02. 게임 개발의 개요 / 027
1.게임 개발의 모습 ● 029
①중, 대규모 개발의 경우 ● 029
②소규모 개발의 경우 ● 030
2.나홀로 하는 게임 개발의 방법 ● 031
①개발자금의 문제 ● 032
②소규모 개발 시의 주의점 ● 032
3.게임 개발 프로젝트의 관리 ● 034
①개발기간의 산정 ● 034
②실제 개발 시의 프로젝트 관리 ● 035
4.게임의 상업성 판단 ● 036
①게임 시장 ● 036
②게이머 ● 037
③게임의 재미 ● 039
④프로토타이핑 ● 040
⑤결론 ● 041

CHAPTER 03. 게임 개발 환경의 정비 / 043
1.유니티의 개요 및 장단점 ● 045
①유니티의 장점 ● 045
②유니티의 단점 ● 046
③결론 ● 046
2.유니티 설치 및 실행 ● 047
①유니티 무료판과 유료판 ● 047
②유니티 엔진의 다운로드 및 설치 ● 049
②-1.유니티 공식 릴리스 버전의 설치 ● 049
②-2.유니티 베타 버전의 설치 ● 053
②-3.유니티 엔진 프로그램의 사양 ● 054
3.비쥬얼 스튜디오 설치 ● 056
4.개발 시 참고할 여러 리소스들 ● 059
①유니티 공식홈 l UNITY3D.COM ● 059
②유니티 스크립팅 API l ANSWERS.UNITY3D.COM ● 059
③유니티 포럼 l FORUM.UNITY3D.COM ● 060
④구글링 l GOOGLE.COM ● 062
⑤유니티 앤서즈 l ANSWERS.UNITY3D.COM ● 063
⑥스택 오버플로우 l STACKOVERFLOW.COM ● 064
⑦MSDN l MSDN.MICROSOFT.COM/KO-KR/DEFAULT.ASPX ● 065
⑧유니티 한국 공식 카페 l CAFE.NAVER.COM/UNITYHUB ● 066

CHAPTER 04. 게임 기획 / 067
1.좋은 게임 기획의 방법 ● 069
①자발성 ● 069
②규칙성 ● 070
③상호작용성 ● 071
④게이머의 입장 ● 072
2.나 홀로 하는 게임기획 ● 073
①나 홀로 하는 게임 기획의 특징 ● 073
②게임 기획의 방법 ● 074
②-1.개발기간의 문제 ● 074
②-2.필수적인 게임의 요소 ● 075
②-3.단순화한 게임을 기획 ● 076
②-4기획서의 작성 ● 076
3.어떤 게임을 만들 것인가? ● 077

CHAPTER 05. 게임 제작의 준비 / 079
1.유니티 프로젝트 만들기 ● 081
2.게임 에셋의 구입 및 확보 ● 084
①에셋 구입처 ● 085
①-1.유니티 에셋 스토어 ● 085
①-2.터보스퀴드 ● 086
①-3.아카이브3D ● 087
①-4.엔바토 마켓 ● 087
②에셋의 확보 예제 ● 088

CHAPTER 06. 오브젝트 만들기 및 유니티 에디터 기본 / 093
1.유니티 에디터 ● 095
①유니티의 주요 윈도우 ● 095
①-1.Scene (씬) ● 096
①-2.Hierarchy (하이어아키) ● 097
①-3.Inspector (인스펙터) ● 098
①-4.Project (프로젝트) ● 099
①-5.Console (콘솔) ● 101
①-6.Game (게임) ● 102
②유니티의 초기 셋팅 ● 105
2.유니티 씬(Scene) 및C#기초 ● 107
①씬의 개념 ● 107
②유니티C#스크립트의 기초 ● 107
③씬 사이의 이동 ● 114

CHAPTER 07. 유니티 중요 구성요소 및 C# 기본 / 119
1.아군 기체 만들기 ● 121
①Prefab(프리팹) ● 121
②Collider (컬라이더) ● 122
③Rigidbody (리짓바디) ● 125
④Mesh Renderer, Shader(메쉬 렌더러, 쉐이더) ● 127
⑤Camera(카메라) ● 128
⑥일반화 프로그래밍 (추상클래스와 인터페이스) ● 130
⑥-1.추상클래스 (Abstract Class) ● 131
⑥-2.인터페이스 ● 134
⑦게임오브젝트 사이의, 스크립트 사이의 통신 ● 138
⑦-1.스크립트 변수 참조 ● 138
⑦-2.스태틱 변수 선언 ● 141
⑦-3.이벤트 발생 및 구독 ● 142
⑦-4.GameObject.SendMessage ● 146
⑦-5.GetComponent ● 147
⑧속성(Property)과 열거형(Enum) ● 148
⑧-1.속성 (Property) ● 148
⑧-2.열거형 (Enum) ● 151
⑨변수의 형식과 그 변환, 연산자 ● 153
⑨-1.변수의 형식 ● 154
⑨-2.변수의 형식변환 ● 154
⑨-3.연산자 (Operator) ● 157
⑩충돌검출 및 그 활용 ● 160
2.적군 기체 만들기 ● 162

CHAPTER 08. 유니티 스크립팅 / 167
1.유니티와 C# 프로그래밍에 대해서 ● 169
①클라이언트 프로그래밍의 개념 ● 169
②MVVM ● 170
③코드의 관리, 가독성 ● 170
④유니티, 프로그래밍 학습방법 ● 171
2.아군 기체 기능 구현 ● 172
①기체의 스탯 (얕은 복사와 깊은 복사) ● 172
②기체의 움직임 구현 ● 177
③발사체 구현 ● 184
3.적군 기체 기능 구현 ● 203
4.배경 만들기 및 움직이기 ● 205
①화면 해상도 설정 ● 206
②배경 만들기 ● 207

CHAPTER 09. 이펙트 및 애니메이션 / 213
1.이펙트 만들기 ● 215
2.애니메이션 ● 219

CHAPTER10. 스테이지 만들기 및 게임매니저 / 229
1.스테이지 및 게임 진행 ● 231
2.게임매니저 스크립트 ● 232

CHAPTER11. 유저 인터페이스 만들기 / 239
1.HP바 만들기 ● 241
2.게임 스코어 표시 ● 246
3.상점 인터페이스 UI 만들기 ● 255
4.게임 메뉴 UI 만들기 ● 268
①Toggle(토글) 만들기 ● 268
②Dropdown(드롭다운) 만들기 ● 274

CHAPTER12. 게임 사운드 넣기 / 289
1.사운드 에셋 구하기 ● 291
2.사운드 에셋 유니티에 적용하기 ● 292
①사운드 에셋 임포트하기 ● 292
②Audio Listener(오디오 리스너) ● 293
③Audio Source(오디오 소스) ● 295
3.사운드 매니저 스크립팅 ● 297

CHAPTER13. 게임 이벤트 넣기 / 303
1.게임의 정지 및 재개 구현 ● 305
2.이벤트 처리 구현 ● 307

CHAPTER14. 게임의 저장 / 309
1.PlayerPrefs (플레이어프렙스) ● 311
2.Serialization (시리얼라이제이션) ● 312
3.XML, JSON 시리얼라이저 ● 314
4.게임서버 (Mysql, PHP) 및 보안 ● 316
①게임 서버 ● 316
②보안문제 ● 317

CHAPTER15. 안드로이드 빌드 만들기 / 319
1.유니티 빌드 세팅 설정하기 ● 321
2.빌드 암호 설정하기 ● 326
3.최종 빌드 만들기 ● 329

CHAPTER16. 게임을 구글 스토어에 올리기 / 331
1.구글 개발자 계정 만들기 ● 333
2.구글 콘솔 앱 셋업하기 ● 334
3.가격 설정 및 출시하기 ● 339
①가격 설정 ● 339
②출시하기 ● 340
4.유니티 광고 붙이기 ● 342
5.기타 스토어 관련 사항들 ● 350

CHAPTER17. 한 걸음 더 나아가기 / 351
1.게임 수정, 추가하기 ● 353
2.C#고급문법을 마스터 하자 ● 354
3.여러가지 게임의 장르와 기획의 결정 ● 355
4.궁극의 분기점-프로그래머가될것인가, 게임기획자가될것인가 ● 355
④-1.프로그래머 ● 355
④-2.게임기획자 ● 356
④-3.기타 다른게임의 분야 ● 357
5.이제부터 무엇을 할 것인가? ● 357