C 2015. 박승제 All Rights Reserved. 초판 1쇄 발행 2015년 2월 10일 지은이 박승제 펴낸이 장성두 펴낸곳 제이펍 출판신고 2009년 11월 10일 제406 2009 000087호 주소 경기도 파주시 문발로 141 뮤즈빌딩 403호 전화 070 8201 9010 / 팩스 02 6280 0405 홈페이지 www.jpub.kr / 이메일 jeipub@gmail.com 편집부 이민숙, 이 슬, 이주원 / 소통 기획팀 현지환 표지디자인 미디어픽스 용지 신승지류유통 / 인쇄 한길프린테크 / 제본 광우제책사 ISBN 979 11 85890 13 5 (93000) 값 38,000원 이 책은 저작권법에 따라 보호를 받는 저작물이므로 무단 전재와 무단 복제를 금지하며, 이 책 내용의 전부 또는 일부를 이용하려면 반드시 저작권자와 제이펍의 서면동의를 받아야 합니다. 잘못된 책은 구입하신 서점에서 바꾸어 드립니다. jeipub@gmail com
드리는 말씀 TM 4 6 4 7 Windows O X Target O X [ ] foxmann@naver com jeipub@gmail com
차 례 x 머리말 xv 베타리더 후기 제 1 장 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 제 2 장 1 언리얼 엔진 소개 게임 엔진이란 무엇인가? 2 언리얼 엔진 4 언리얼 엔진의 특징 7 언리얼 엔진의 최소 사양 18 언리얼 엔진 설치 19 언리얼 엔진 런처 23 언리얼 프로젝트 브라우저 26 게임 템플릿 28 언리얼 에디터 34 37 언리얼 에디터의 인터페이스 2.1 언리얼 에디터의 인터페이스 38 2.1.1 탭바와 메뉴바 39 / 2.1.2 툴바 41 / 2.1.3 뷰포트 42 / 2.1.4 모드 44 2.1.5 콘텐츠 브라우저 45 / 2.1.6 씬 아웃라이너 46 / 2.1.7 디테일 47 2.2 에디터 커스터마이징 48 2.2.1 탭의 이동과 배치 48 2.2.4 엔진 퀄리티 세팅 50 제 3 장 / 2.2.2 탭 숨김과 탭 표시 49 / 2.2.3 / 2.2.5 언리얼 에디터의 언어 설정 51 툴바 크기 변경 49 53 언리얼 에디터의 기본 기능 3.1 새 프로젝트 만들기 54 3.1.1 게임 플레이 54 3.2 3.3 3.3.1 레벨 열기 59 3.4 / 3.1.2 플레이 옵션 55 씬(레벨)의 기본 요소 57 레벨 열기와 레벨 만들기 59 / 3.3.2 새 레벨 만들기 60 언리얼 엔진의 좌표계 64 3.4.1 게임의 전방 64 / 3.4.2 액터의 기준점 65 3.4.4 액터의 회전 방향 66 / 3.4.3 언리얼 엔진의 단위 66 차례 v
3.5 뷰포트 컨트롤 67 3.5.1 카메라 컨트롤 67 3.5.4 스냅 설정 72 3.6 / 3.5.2 액터의 선택 68 / 3.5.3 프로젝트 관리 75 3.6.1 Game 폴더의 구조 76 / 3.6.2 검색과 필터 76 3.6.4 액터의 이주 79 / 3.6.5 액터의 속성 80 제 4 장 트랜스폼 컨트롤 68 / 3.6.3 레퍼런스 뷰어 77 85 블루프린트 기초 4.1 블루프린트의 개요 86 4.1.1 블루프린트의 작성 규칙 86 / 4.1.2 블루프린트 노드의 종류 87 4.1.3 블루프린트의 종류 93 / 4.1.4 블루프린트 에디터의 인터페이스 94 4.2 블루프린트 만들기 96 4.2.1 Documentation Actor 96 4.3 4.4 4.5 4.6 4.7 4.8 4.9 / 4.2.2 키와 마우스 입력 처리 98 변수와 연산 결과 표시 102 주석 달기 107 사운드 On/Off 108 트리거 사용법 111 스태틱, 무버블, 스테이셔너리 116 콜리전과 충돌 이벤트 118 블루프린트 액터 121 4.9.1 충돌하면 폭발하는 공 121 / 4.9.2 타임라인의 활용 127 4.10 화면에 Text 표시 136 4.10.1 블루프린트 액터 만들기 136 / 4.10.2 Text Render의 방향 전환 139 4.10.3 가까이 가면 나타나는 Text 140 4.11 텍스트 렌더에 한글 사용하기 143 4.12 Physics와 액터 Spawn 152 제 5 장 액터 움직이기 5.1 새 프로젝트 시작 160 5.1.1 새 레벨 만들기 161 / 5.1.2 프로젝트 세팅 162 / 5.1.3 리소스 폴더 만들기 162 5.1.4 게임 리소스 다운로드 163 / 5.1.5 FBX 파일 Import 164 / 5.1.6 메시 에디터 165 5.2 폰 블루프린트 만들기 169 5.2.1 아파치 헬기 블루프린트 만들기 169 / 5.2.2 로터와 꼬리날개 회전 172 5.2.3 스프링 암과 카메라 175 / 5.2.4 스프링 암의 회전과 게임 뷰 176 5.3 5.4 5.5 5.6 vi 차례 배경음악과 효과음 179 게임 모드와 월드 세팅 183 카메라의 줌인 187 입력 장치 설정 188 159
5.7 액터의 이동과 회전 192 5.7.1 액터의 이동 192 / 5.7.2 모바일 플랫폼의 화면 196 / 5.7.3 가속도와 선형보간 197 5.7.4 함수 만들기 199 / 5.7.5 액터의 회전 203 / 5.7.6 액터가 회전할 때 화면 기울이기 204 5.7.7 마우스로 화면 각도 조절하기 208 / 5.7.8 마우스로 진행 방향 조절하기 210 5.8 제 6 장 모바일 기기의 터치 읽기 211 217 로켓 발사 6.1 6.2 로켓 만들기 218 로켓 발사 222 6.2.1 로켓의 발사 위치 설정 222 6.2.4 로켓의 충돌 처리 227 6.3 / 6.2.2 로켓 발사 224 / 6.2.3 로켓 발사 화염 표시 226 디스트럭터블 메시 파괴 230 6.3.1 디스트럭터블 메시 만들기 230 / 6.3.2 디스트럭터블 메시 파라미터 232 6.3.3 디스트럭터블 메시 배치 232 / 6.3.4 디스트럭터블 메시 머티리얼 233 6.4 마우스로 헬기 회전하기 234 6.4.1 마우스로 좌우 회전 234 제 7 장 파티클의 구성 238 로켓 발사 파티클 수정 240 폭파 불꽃 파티클 수정 243 로켓 연기 만들기 248 7.4.1 새 파티클 만들기 248 / 7.4.2 파티클을 로켓에 연결 257 머티리얼의 개요 258 로켓의 머티리얼 수정 259 아파치 헬기의 머티리얼 262 모바일 플랫폼의 머티리얼 265 8.4.1 파티클의 머티리얼 265 제 9 장 253 머티리얼 8.1 8.2 8.3 8.4 / 8.4.2 대공포 설치 9.1 9.2 9.3 235 237 파티클 다루기 7.1 7.2 7.3 7.4 제 8 장 / 6.4.2 회전할 때 지평선 기울이기 Customized UV 268 271 대공포 오브젝트 import 272 대공포의 머티리얼 설정 274 블루프린트 액터 만들기 278 차례 vii
9.4 9.5 9.6 대공포의 아파치 헬기 탐지 283 Custom 이벤트 286 대공포 최적화 291 9.6.1 대공포 로켓의 중력 제거 291 / 9.6.2 로켓의 컴포넌트와 트리거 수정 292 9.6.3 로켓의 블루프린트 수정 293 / 9.6.4 파괴된 대공포의 로켓 발사 금지 295 9.6.5 파괴된 대공포 잔해 제거 296 / 9.6.6 대공포 로켓의 공중 폭파 297 9.7 9.8 제 10 장 파괴한 대공포 계산 299 모바일 플랫폼의 대공포 303 309 HUD 시스템 10.1 HUD 만들기 310 10.2 텍스트 출력 312 10.2.1 HUD 블루프린트 작성 312 / 10.2.2 텍스트를 화면 중앙에 정렬 313 10.3 이미지 출력 319 10.3.1 이미지 출력 노드 319 / 10.3.2 UV 좌표 321 / 10.3.3 Draw Material 322 10.4 HUD용 머티리얼 만들기 324 10.4.1 파란색 네모 머티리얼 324 제 11 장 327 게임오버와 게임 UI 11.1 게임 UI의 구성 328 11.2 게임오버 처리 330 11.2.1 게임오버의 조건 330 / 11.2.2 게임오버 시 처리할 사항 331 11.2.3 연료 게이지 처리 336 / 11.2.4 프로그레스바 처리 337 11.2.5 대공포의 포격 금지 337 / 11.2.6 Apache 블루프린트의 게임 루프 338 11.3 메뉴 타이틀 만들기 339 11.3.1 메뉴 타이틀 머티리얼 339 / 11.3.2 깜박거리는 머티리얼 341 11.3.3 텍스처 블렌딩 342 / 11.3.4 텍스처 스크롤 345 11.3.5 Texture Parameter 346 11.4 프로그레스바 만들기 349 11.4.1 프로그레스바 이미지 만들기 349 / 11.4.2 텍스처 속성 설정 351 11.4.3 머티리얼 만들기 351 / 11.4.4 텍스처 블렌딩 354 11.5 게임 UI 만들기 356 11.5.1 KillCount의 바인딩 359 / 11.5.2 EnemyCount의 바인딩 360 11.5.3 프로그레스바의 바인딩 360 / 11.5.4 Apache에 UI 연결 361 11.6 메인 메뉴 만들기 363 11.6.1 메인 메뉴 위젯 만들기 363 / 11.6.2 버튼의 이벤트 366 11.6.3 Apache에서 메뉴 호출 367 11.7 Popup 메뉴 만들기 371 11.7.1 Popup 상태 처리 371 11.7.3 Popup 메뉴 호출 374 viii 차례 / 11.7.2 Popup 메뉴 만들기 373
11.8 1인칭/3인칭 전환 377 11.8.1 377 / 11.8.2 UMG 380 제 12 장 Pickup 12.1 Pickup 만들기 386 12.1.1 Resource Import 386 / 12.1.2 Pickup 387 12.1.3 Pickup 388 12.2 Pickup 블루프린트 만들기 389 12.2.1 389 / 12.2.2 Pickup 390 12.3 Pickup 충돌 처리 392 12.4 Pickup 배치 394 385 제 13 장 Volume Tag 13.1 Lightmass Importance Volume 398 13.1.1 Lightmass Importance Volume 398 13.1.2 Lightmass Importance Volume 399 13.2 PostProcess Volume 400 13.3 Blocking Volume 405 13.4 게임의 원경 만들기 409 397 제 14 장 413 14.1 모바일 디바이스의 퍼포먼스 414 14.1.1 414 / 14.1.2 HDR 415 14.1.3 Post Process Eff ect 419 / 14.1.4 421 14.1.5 422 / 14.1.6 423 14.1.7 423 14.2 안드로이드 SDK 설치 424 14.3 안드로이드 단말기의 개발자 설정 427 14.4 안드로이드 빌드 428 찾아보기 433 ix
머리말 언리얼 엔진의 세계에 입문한 여러분을 환영합니다. 언리얼 엔진은 크라이 엔진과 더불어 전 세계적으로 아주 유명한 게임 엔진입니다. 우리가 알고 있는 많은 게임이 언리얼 엔진으로 개발되었으며, 게임의 품질 또한 매우 우수하다고 평가되고 있습니 다. 과거의 언리얼 엔진은 높은 성능만큼이나 고가의 가격 정책으로 인해 대작 게임 을 만들려는 메이저급 개발사의 특권과도 같아 일반인들이 쉽게 사용할 수 없는 제 품이었습니다. 그러나 2014년 3월, GDC 2014에서 공개된 모두의 언리얼 엔진 4 는 멀티 플랫폼 지원과 함께 아주 저렴한 가격에 엔진의 소스 코드까지 공개하여 행사 의 가장 큰 화제가 되었습니다. 이제 언리얼 엔진은 누구나 사용할 수 있는 범용 엔 진이 된 것입니다. 언리얼 엔진 4는 블루프린트 비주얼 스크립트를 제공하므로 순서도를 그리는 것과 같은 방식으로 게임을 개발할 수 있습니다. 프로그래밍 언어로 개발할 때는 사용하 는 언어의 문법을 알고 있어야 하는데, 언어마다 문법이 달라 새로운 언어를 사용할 경우에는 먼저 그 언어의 문법부터 학습해야 합니다. 특히 게임과 같은 복잡한 시스 템을 설계할 때는 사용하는 언어의 세부적인 지식이 필요하므로 언어의 문법과 특 성을 배우는 데 많은 시간이 소요됩니다. 블루프린트는 프로그래밍 언어를 사용하지 않으므로 게임의 로직logic만 잘 설계하면 누구나 쉽게 게임을 개발할 수 있습니다. 이것은 블루프린트가 프로그래밍 문외한 도 게임을 만들 수 있는 새로운 툴이라는 말이 아니라, 블루프린트를 이용하면 프로 그래밍 언어의 문법을 배우는 데 필요한 시간을 절약할 수 있어서 게임의 흐름을 설 계하는 데 보다 집중할 수 있다는 의미입니다. 블루프린트를 사용하든 프로그래밍 언어를 사용하든 좋은 개발자가 되기 위해서는 프로그래밍 언어의 기본적인 기능과 프로그래밍의 로직은 알고 있어야 할 것입니다. x 머리말
이 책은 언리얼 엔진의 블루프린트를 이용해서 게임을 개발하는 전반적인 과정에 대 해 다루고 있습니다. 언리얼 엔진이 멀티 플랫폼을 지원하는 만큼 예제로 사용하는 모든 기능이 모바일 플랫폼에서도 작동되도록 하고 있으며, 모바일에서 달라지는 부 분은 별도의 설명을 추가했습니다. 블루프린트 스크립트는 노드를 연결해서 게임의 로직을 구성하므로 노드가 복잡해 지면 아주 커다란 순서도가 되어 책에 싣기가 곤란한 경우가 많습니다. 이 책에서는 독자들의 가독성을 고려하여 노드가 커지지 않도록 세심하게 배려했으며, 복잡한 노드는 각각의 기능을 갖는 함수로 나누어서 전체적인 흐름을 이해하기 쉽도록 구 성했습니다. 게임 엔진은 다양한 게임을 만들 수 있도록 도와주는 툴입니다. 따라서 게임에는 엔 진의 모든 기능이 사용되지는 않습니다. 이 책은 언리얼 엔진의 기본적인 기능을 학 습하는 데 중점을 두고 있습니다. 그렇지만 엔진의 단편적인 기능에 대한 설명이 아 니라, 하나의 게임을 만들어 가면서 게임에 필요한 기능을 구현하는 과정에 초점을 맞추고 있습니다. 따라서 책의 지면상 예제 게임에 불필요한 기능은 다루지 않은 부 분이 더러 있음을 알려드립니다. 이 책의 주요 내용 책은 지면이라는 한계가 있으므로 아무래도 책에서 하는 설명은 함축적일 수밖에 없습니다. 이와 같은 한계를 극복하기 위해 이 책은 프로젝트의 모든 과정을 별도의 동영상으로 제공합니다. 따라서 필자가 만든 동영상과 유튜브에 있는 튜토리얼들을 참고해서 학습하면 책의 부족한 부분이 충분히 보완될 수 있을 것으로 생각합니다. 동영상에 대한 안내는 독자 A/S 안내 를 참고하시기 바랍니다. 제1장 언리얼 엔진의 특징과 설치 방법 등에 대해 알아본다. 제2장 언리얼 에디터의 인터페이스와 기본적인 기능에 대해 알아본다. 제3장 언리얼 에디터의 세부적인 기능과 씬의 기본 요소, 카메라 조작법, 액터의 이동과 회전 등 언리얼 에디터의 전반적인 기능에 대해 알아본다. 머리말 xi
제4장 간단한 예제를 활용해서 블루프린트의 노드와 구성 원리 등을 학습하는 과정이다. 제5장 이 장부터는 실제로 게임을 만들어가는 과정에 대한 내용이다. 프로젝트에 오브젝트를 추가하고 움직임을 제어하는 세부적인 과정, 모바일 플랫폼에 서 달라진 부분 등을 설명한다. 제6장 블루프린트로 로켓을 만들고 발사해서 목표물을 파괴하는 과정이다. 제7장 게임에서 사용하는 파티클을 수정하고 새로운 파티클을 만든다. 제8장 머티리얼의 기본 개념을 학습하고 게임에서 사용하는 머티리얼을 수정한다. 제9장 적군으로 사용할 대공포를 설치하고, 대공포가 아군을 탐지하고 공격하는 기능에 대한 설명이다. 제10장 HUDHeads-Up Display를 이용해서 게임 화면에 글자와 텍스처 및 머티리얼을 출 력하는 방법에 대한 설명이다. 제11장 화면에 스코어와 연료 게이지 등의 UI와 메뉴를 표시하고 게임 오버를 처 리하는 과정이다. 메뉴 타이틀과 연료 게이지는 머티리얼로 만들고, UI는 UMG로 만든다. 제12장 Pickup은 게임 중 획득하는 아이템으로, 체력이나 연료, 실탄 등을 보충할 때 사용한다. 이 장은 게임에서 Pickup을 활용하는 과정에 대한 설명이다. 제13장 볼륨Volume은 게임에서 특정한 처리를 하기 위해 씬에 설치한 눈에 보이지 않 는 영역이다. 이 장은 볼륨과 액터의 Tag, 게임의 원경을 만드는 방법에 대 해 알아본다. 제14장 모바일 플랫폼용 SDK를 설치하고 빌드해서 배포하는 과정에 대한 설명이다. xii 머리말
이 책의 대상 독자 이 책은 언리얼 엔진을 이용해서 게임을 만들어 보려는 생각을 가지고 있는 모든 사 람을 대상으로 하고 있지만, 최소한 다음과 같은 사전 지식이 있으면 게임 개발에 많은 도움이 될 것으로 생각합니다. 프로그래밍 언어에 대한 기초 지식 포토샵에 대한 기초 지식 3ds Max나 Maya, Blender 등의 3D 모델링 툴에 대한 기초 지식 중학생 정도의 수학과 물리학에 대한 기초 지식 독자 A/S 안내 이 책에서 사용하는 각종 리소스는 다음의 사이트에서 다운로드할 수 있으며, 책 내용에서 궁금한 부분이 있으면 독자 Q&A를 이용하시면 최대한 성의껏 답변해 드 리겠습니다. 게임 리소스 다운로드 독자 Q&A 온라인 강좌(유튜브) http://afterglow.co.kr(자료실 Unlreal Engine Resource) foxmann@naver.com 혹은 jeipub@gmail.com http://goo.gl/vmjdrq(혹은 유튜브에서 제이펍 도서 나 저녁놀 박승제 로 검색) 저자 블로그 http://foxmann.blog.me 저자 이메일 foxmann@naver.com 유튜브 동영상 활용법 책은 정적인 매체이므로 게임을 개발하는 과정과 실행 결과를 실시간으로 보여줄 수 없다는 한계가 있습니다. 그렇기 때문에 책으로 공부하는 사람들은 현재 자신이 하는 방법이 맞는지, 또 실행 결과는 정확한지에 대한 의구심이 생길 수밖에 없습니 다. 이와 같은 한계를 극복하기 위해 이 책에서 다루는 예제를 제작 과정과 실행 결 과를 책의 순서에 따라 동영상 23편으로 나누어서 유튜브에 올려두었습니다. 유튜브에 있는 동영상은 튜토리얼처럼 보면서 따라하는 용도로 만든 것이 아닙니다. 머리말 xiii
먼저 책의 설명대로 실습을 해 보고, 자신이 작업한 과정과 실행 결과가 제대로 된 것인지를 점검하고 복습하는 용도로 만든 것이므로 동영상이 매우 빠르게 진행됩니 다. 동영상에는 저자의 음성 녹음이 없으며, 중요한 부분은 아이콘과 자막으로 처리 하고 있습니다. 따라서 책으로 실습을 해 본 독자들은 쉽게 이해할 수 있지만, 책을 보지 않고 동영상만으로 학습하기는 곤란할 것입니다. 일부 동영상에는 PC에 안드 로이드 단말기를 연결하고 언리얼 엔진에서 직접 단말기로 빌드하여 게임을 실행하 는 과정도 있으므로 아아폰 사용자에게도 좋은 참고가 될 것으로 생각합니다. 모쪼록 이 책이 여러분의 언리얼 엔진 게임 개발에 많은 도움이 되어서 여러분이 꿈 꾸는 게임을 구현하는 데 더할 나위 없이 좋은 지침서가 되기를 바랍니다. 감사의 글 책을 기획할 때의 언리얼 엔진은 최신 버전이 4.2.1이었는데, 책을 집필하는 과정에 서 언리얼 엔진이 지속적으로 버전업되고, 버전업될 때마다 인터페이스와 용어, 블 루프린트 노드 등이 바뀌어서 원고와 프로젝트를 계속 수정해야 했습니다. 그동안 수차례에 걸친 수정 요구를 묵묵히 수용해 주신 제이펍 출판사의 장성두 사장님을 비롯한 모든 임직원에게 감사의 말씀을 드립니다. 특히 필자의 졸고를 끝까지 책임지 고 완성해 주신 편집부 이민숙 과장님의 노고와 편집 및 표지 디자이너, 원고를 꼼 꼼하게 점검하면서 교정하고 좋은 의견을 제시해 주신 베타리더들께도 깊은 감사의 말씀을 드립니다. 박승제 (필명: 저녁놀) xiv 머리말
베타리더 후기 김제룡(NHN Entertainment) 게임 시장은 모바일이 압도적으로 점유하고 있는 추세이고, 점점 더 그래픽 품질이 높아지는 상황입니다. 언리얼 엔진은 모바일 버전에 늦게 대응해서 점유율이 높지는 않지만, 화려한 그래픽을 특징으로 점점 더 많이 사용되고 있습니다. 곧 다가올 고 품질 모바일 게임 개발에 대비하는 것이 좋은데, 한 단계씩 따라 하면서 쉽게 익힐 수 있는 이 책이 많은 도움이 될 것입니다. 송영준(ZUM internet) 이 책만 잘 따라 한다면 프로그래밍을 몰라도 언리얼 엔진 블루프린트로 간단한 게 임을 만들 수 있을 것입니다. 블루프린트로 만드는 작업은 비교적 간단하지만, 게임 프로그래밍/그래픽스에서 다루는 기법들을 잘 녹여 내고 있어서 다른 책에서 배운 이론들이 실제 어떻게 구현되는지 알아보는 용도로도 좋아 보입니다. 송종근(위시컴퍼니) 언리얼 엔진과 유니티를 비롯한 다양한 게임 엔진들로 인해 게임 개발이 더욱 쉬워 지고 있는 추세입니다. 그중에서도 단연 돋보이는 언리얼 엔진의 차별화된 개발 방 법인 블루프린트 방식을 제대로 배울 수 있어서 개인적으로 고마움을 느낀 시간이 었습니다. 이제는 정말 개발이 어려워서 아이디어를 게임화하지 못한다는 말을 하지 못할 것 같습니다. 베타리더 후기 xv
원강민((주)퍼니피플) 핵심적인 요소들을 순차적으로 배울 수 있어서 좋았습니다. 블루프린트를 계속 보 다 보니 코드보다 더 직관적인 경우가 많은 것 같습니다. 입문자를 위해 차근차근 안내하고 있어서 재미있게 베타리딩했습니다! 이준호(NCSOFT) 언리얼 엔진의 훌륭한 기능들은 게임 개발의 난이도를 취미 레벨로 끌어내려 준 것 같습니다. 책은 그냥 따라만 해도 게임을 만들 수 있을 정도로 쉬웠습니다. 물리에 대한 이해가 있다면 더 좋을 것 같습니다. 툴에 대한 설명 이후 실제 게임을 만들어 보는데, 하나하나 단계별로 즉시 실행해 볼 수 있다는 것이 큰 장점이라고 생각됩니 다. 그리고 마지막 페이지에서 게임이 완성될 때, 그때의 기쁨을 많은 분이 함께 느 꼈으면 좋겠습니다. 최아연(숭실대학교) 언리얼은 처음이라 막연히 어렵게 느꼈었는데, 막상 책에 나온 과정을 따라 해 보니 정말 쉽고 재미있어서 놀랐습니다. 게임에 필요한 기본적인 알고리즘만 생각할 수 있으면 코딩이 익숙하지 않은 사람이라도 블루프린트를 통해 충분히 원하는 것을 만들어 낼 수 있겠다는 생각이 들었습니다. 최해성(티켓몬스터) 게임 개발은 전혀 해 보지 않았지만, 이 책을 통해 대략적인 감을 잡을 수 있었습니 다. 블루프린트라는 개념으로 마치 ios의 스토리보드를 사용하는 것처럼 틀을 잡을 수 있다는 것이 상당히 재미있었습니다. 헬기 게임을 통해 한 레벨을 구현해 봄으로 써 3D 게임을 만드는 데 필요한 기본적인 요소들을 배울 수 있었습니다. 기능 구현 은 결국 프로그래밍을 해야겠지만, 블루프린트를 사용한다면 언리얼 엔진의 진입 장 벽을 상당히 낮출 수 있을 것 같습니다. 제이펍은 책에 대한 애정과 기술에 대한 열정이 뜨거운 베타리더들로 하여금 출간되는 모든 서적에 사전 검증을 시행하고 있습니다. xvi 베타리더 후기