이미 소장하고 있다면 판매해 보세요.
|
1장 유니티 스타트 가이드
_1.1 유니티란? __게임 개발의 ‘민주화’ __풍부한 정보와 거대한 커뮤니티 _1.2 유니티의 제품 구성 __기본 구성인 ‘유니티 프리’와 추가 라이선스 __업무용 라이선스 ‘유니티 프로’ __시험판 라이선스 __iOS/안드로이드 개발에 필요한 환경 __컬럼: 유니티와 유니티 프로의 차이 _1.3 유니티 설치 __다운로드와 설치 __유니티 프리 액티베이션 순서 __시험판 액티베이션 __유료판 구입과 액티베이션 _1.4 데모로 체험해 보기 _1.5 유니티 화면 구성 2장 일단 무엇인가 만들어 보기 _2.1 밸런스 게임 만들기 __2장에서 만들어 볼 게임 _2.2 판 만들기 __스케일 툴로 늘이기 __컬럼: Scene 뷰 조작 __라이팅 _2.3 볼 만들기 _2.4 물리 시스템 구축하기 __반사 계수 추가하기 _2.5 키 입력 구현하기 __컬럼: Mac판 MonoDevelop의 일본어 문제에 대해 __컬럼: 스크립트 해설 __씬 저장과 빌드 3장 모바일용으로 빌드하기 _3.1 데스크톱 PC와 모바일의 차이 __조작성의 차이 __디스플레이의 차이 __처리 능력의 차이 _3.2설계 재검토 __가로 화면 대응 __기울기 입력 대응 __컬럼: iOS 시뮬레이터와 안드로이드 에뮬레이터에 대해 _3.3 ios용 빌드 순서 __플랫폼의 변환 __Player Settings 조정 __디폴트 화면의 방향 __번들 식별자 __컬럼: 번들 식별자에 관해 __서스펜드 시점의 종료 __베이스 SDK 버전 __엑스코드 프로젝트 출력 __엑스코드상에서의 빌드 __컬럼: 링커 경고(Linker Warning)에 관해 _3.4 안드로이드를 위한 빌드 순서 __컬럼: 안드로이드 플랫폼 버전(API 레벨)에 관해 __플랫폼의 변환 __Player Settings의 조정 __디폴트 화면의 방향 __번들 식별자 __빌드와 실행 __컬럼: 구형 안드로이드 디바이스에서 에러가 표시될 때 4장 미로 게임 _4.1 미로 게임 디자인 __게임 요소 _4.2 미로와 배경 만들기 __무대(판) 만들기 __광원 만들기 __무대에 무늬 넣기(텍스처 매핑) __카메라 배치 변경 __배경 만들기 _4.3 외벽과 장애물 배치 __프리팹을 이용한 복제 __외벽 만들기 __장애물 만들기 __재질 추가 __컬럼: 스케일을 수정한 오브젝트의 텍스처 매핑 _4.4 볼 만들기 __오리지널 볼 만들기 __프리팹 작성과 인스턴스 배치 __볼 굴리기 _4.5 문제점 발견과 해결 __볼이 움직이지 못하는 경우 __볼이 무대를 빠져나가는 문제 __컬럼: 만약 제대로 구현한다면 - 또 하나의 해결법 _4.6 제어 스크립트 추가 __중력 컨트롤러(GravityController.js) __볼 제어 스크립트(Ball.js) _4.7 기울기 연출 __기울기 리그 만들기 __기울기 리그 제어 스크립트(TiltRig.js) _4.8트랩 추가 __트랩 설계 __트리거를 사용한 접촉 검출 __게임 오브젝트에 대한 태그의 설정 __컬럼: pre-set 태그 __리스타트 지점 배치 __트랩 스크립트(Trap.js) _4.9 골(goal) 만들기 __골 트리거 만들기 __골 판정 스크립트(Goal.js) _4.10 클리어 메시지 표시 __컬럼: 유니티의 GUI 시스템 __GUI의 구조 __폰트 추가 __컬럼: 폰트 라이선스에 대해 __스타일 설정 _4.11 타이틀 화면 만들기 __게임 본편 씬 저장 __타이틀 화면 씬 추가 __타이틀 화면 씬 구축 __게임 클리어 시의 동작 변경 __컬럼: yield문과 코루틴(co-routine) _4.12 외형 개선 __라이팅 조정 __볼 스페큘러의 설정 __트랩의 점멸 _4.13 완성! __개선안 _4.14 모바일 플랫폼으로 이식 __조작성 재설계 __카메라와 부모/자식 관계 변경 __컬럼: 카메라의 화각에 대해 __타이틀 화면 조정 __폰트 설정 조정 __컬럼: 다이내믹 폰트 렌더링이란 __Rendering Path 변경 __컬럼: 모바일 플랫폼에서 Forward Rendering 선택의 어려움_ __컬럼: 간편한 디바이스 동작 확인 툴 - 유니티 Remote __컬럼: 쿼터니언에 관해 5장 블록 슈터 게임 디자인 _5.1 블록 슈터 게임 디자인 _5.2 방 만들기 __바닥ㆍ벽ㆍ천장 만들기 __광원의 배치 __계층구조 구축 __씬의 저장 __카메라 배치 _5.3 상자 만들기 __컬럼: 폴더로 조정 _5.4 총 쏘기 __탄환 프리팹 만들기 __총 쏘기 만들기 __클릭한 위치로 발사되게 하기 __컬럼: 월드 좌표계와 화면 좌표계 __충돌 시의 파괴 처리 작성 __메시징의 도입 __시각적 연출의 개선(파티클 효과 추가) __컬럼: 파티클 시스템 파라미터 __추가 연출의 개선(소멸의 지연) __컬럼: 힘 모드(ForceMode)에 관해 _5.5 상자 제너레이터 만들기 __컬럼: Random.Range의 주의점 _5.6 안 보이는 벽 만들기 __일반 벽을 이용한 ‘안 보이는 벽’ 만들기 __레이어와 콜리전 필터링 도입 _5.7 스코어 측정 __스코어 측정 기능의 대략적인 설계 __Scorekeeper 스크립트 구현(점수 관리와 표시) __Referee 스크립트 구현(룰에 따라 판정하는 처리) __Box 스크립트 개조 __Game Controller 게임 오브젝트 만들기 __Box 프리팹 설정 _5.8 GUI 스킨 설정 __GUI 스킨 제작 __GUI 스킨의 적용 _5.9 시간제한 설정 __Timekeeper 스크립트 작성(제한시간 설정) __TimeUp 메시지 처리 추가 _5.10 결과 화면 만들기 __ResultScreen 스크립트 작성(게임의 결과 표시) __기타 설정과 동작 확인 _5.11 게임 시작 연출 __GameStarter 스크립트 작성(게임 시작 화면 연출) __StartGame 메시지 처리 추가 __기타 설정과 동작 확인 _5.12 타이틀 화면 추가 __타이틀 화면 씬 만들기 __TitleScreen 스크립트 구현(타이틀 화면의 표시와 제어) __ResultScreen 스크립트 수정 _5.13 완성 __개선안 _5.14 모바일 플랫폼으로 이식 __일단 동작시켜 보기 __라이트 매핑의 도입 __Graphics Emulation의 변경 __컬럼: 씬 간에 라이트 맵 공유 _5.15 iOS 플랫폼 버전 미세 조정 __화면 회전 애니메이션 방지 __frame rate 올리기 __컬럼: 유니티와 자바스크립트 6장 캐릭터를 이용한 액션 게임 _6.1 액션 게임 디자인 _6.2 스테이지 구성 __광원 배치 __물리 재질의 설정 __카메라 조정 __이름과 구조의 정리 _6.3 캐릭터 이용하기 __ __파일의 임포트 __컬럼: 유니티에서 이용 가능한 3D CG툴과 파일 형식 __컬럼: 본(bone, 뼈) 구조와 본 애니메이션 __캐릭터 배치 __캐릭터 내용 이해 __애니메이션 이해 __스크립트로 애니메이션을 제어하기 __애니메이션을 매끄럽게 연결하기 __애니메이션 재생 속도 변경하기 _6.4 플레이어 캐릭터 구축 __CharacterController 컴포넌트 추가 __스크립트에 의한 Character Controller의 제어 __점프 구현 __컬럼: 그림자 표시(유니티 Pro용) _6.5 코인과 장애물 구현 __모델 임포트와 조정 __물리 엔진 설정 __제어 스크립트 추가 _6.6 제너레이터 만들기 __제어 스크립트 작성 _6.7 코인 획득과 데미지 메시징 __충돌 판정 무효화와 트리거의 추가 __레이어 설정 __트리거 추가 __송신측 스크립트의 추가 __수신측 스크립트 추가 _6.8 시각적 연출과 외형 개선 __데미지 연출 구현 __파티클 효과 추가하기 __GUI를 보기 쉽게 하기 _6.9 사운드 적용 __사운드 파일 임포트 __음원 추가 __컬럼: 사운드를 듣는 위치 설정 __사운드 발생 스크립트 작성 __3D 사운드 조정 __BGM 재생 __다른 효과음도 적용해보기 _6.10 마무리 _6.11 모바일 플랫폼으로 이식 __Standard Assets 임포트와 가상 조이스틱 적용 __조작방법을 가상 조이스틱에 이식하기 __점프 버튼 이식 7장 다음 단계로 _7.1 유니티 Asset Store __스스로 만들 수 없는 것을 구하기 위해 __시간 절약을 위해 __애셋 스토어와 유니티 커뮤니티 __애셋 스토어와 유니티 커뮤니티 _7.2 유니티 Answers _7.3 유니티 Technologies 공식 블로그 부록 재질 설정에 관해 _A.1 표준 셰이더 설명 __Diffuse - 확산 반사 __Decal - 데칼 확산 반사 __Specular - 거울 반사 __Unlit - 라이팅 없음 __Bumped Diffuse/Bumped Specular - 범프드 맵핑 __Self-Illumin / * - 자체 발광성 셰이더 __Transparent/* - 투과성 셰이더 __Reflective/* - 반사성 셰이더 _A.2 법선 맵 제작법 __컬럼: 모델링 툴 ZBrush _A.3 큐브 맵의 제작법 __Skybox 소재에서 큐브 맵 만들기 __파노라마 사진으로 큐브 맵 만들기 [한국어판 특별 부록] 유니티 4.0에서 새롭게 추가된 기능 (글쓴이 이득우 / 『유니티 게임 개발의 정석』) |
최재원의 다른 상품
|
『유니티 입문』이 한국어로 출판된다니 매우 기쁩니다. 한국과 일본은 문화적으로는 상당히 닮아 있지만 게임 분야에서는 미묘하게 다른 배경을 가지고 있습니다. 한국의 독자들에게는 게임이라는 것이 단지 PC로 즐기는 것으로만 인식되어 있을지 모르지만, 일본에서는 아직도 플레이스테이션3나 엑스박스360 같은 콘솔 게임기의 인기가 매우 높습니다. 최근에 모바일 소셜게임의 인기가 날로 높아지고 있는데, 이런 트렌드는 일본에서 유니티가 급격하게 보급된 이유이기도 합니다.
유니티는 ’게임 개발의 민주화’라는 비전으로 내세우고 있지만 이러한 비전의 의미도 나라나 지역에 따라 다릅니다. 미국과 유럽에서는 우선 아이폰 게임 개발이 유니티에 의해 민주화 되었습니다. 일본에서도 모바일 게임 개발에서는 유니티가 상당한 영향을 미치고 있는데 실질적인 의미에서 일본의 게임 개발이 민주화 되려면, 우선 콘솔 게임 개발 분야가 변해야 한다고 생각합니다. 한국의 경우라면 유니티를 이용해 PC용 MMORPG 등의 게임을 누구라도 만들 수 있게 된다면 비로소 ’한국의 게임 개발이 민주화 되었다’라고 말할 수 있을지도 모르겠군요. 세계 어떤 곳에서도 진정한 의미에서 ’게임 개발의 민주화’가 달성되는 것은 아직 먼 미래의 이야기일 것입니다. 이 책은 누구라도 게임 개발을 시작할 수 있다고 표방하는 유니티의 비전을 추구합니다. 일본뿐만 아니라, 한국 독자들 중에서도 이 책을 계기로 유니티로 게임 개발을 시작하는 사람이 생긴다면 저로서는 매우 기쁜 일이 될 것입니다. 앞으로 여러분 모두 훌륭한 게임을 개발하게 되기를 기원합니다! - 저자 타카하시 케이지로 ---「 한국어판 출간에 부쳐 」 중에서 유니티는 오랫동안 게임을 만들어 온 사람들에게 있어서 마법과도 같은 기술의 결정체다. 예전이라면 엄청나게 많은 작업을 거쳐야 구현 가능했던 작업들이 유니티에서는 순식간에 실현가능해졌다. 유니티가 등장함에 따라 새롭게 인식하게 된 사실이 있다. 그것은 ’게임을 만들기 위한 기술’과 ’게임을 만드는 기술’은 완전히 별개라는 점이다. 못을 박는 방법이나 대패 쓰는 법을 안다고 해서 그것만으로 집을 만들 수는 없다. 붓을 잡는 방법이나 유화물감을 녹이는 방법을 알고 있다고 해서 그것만으로 명화를 그릴 수도 없다. 마찬가지로 셰이더 프로그램을 짜는 법이나 충돌 판정 알고리즘을 알고 있다 해도 그것만으로는 절대 게임을 만들 수는 없다. 유니티는 기술의 결정체다. 셰이더 프로그램을 짜는 법이나 충돌 판정 알고리즘 등을 습득하기 위한 수고와 괴로움을 마치 마법처럼 없애 준다. 지금까지 게임 산업에서 팽창해 왔던 ’게임을 만들기 위한 기술’을 믿을 수 없을 만큼 알차게 제공해 준다. 그러나 ’게임을 만드는 기술’까지 따라 오지는 않는다. 각자의 창조력에 의해 보충되어야 할 것이다. 이 책은 유니티로 게임을 만들어 보는 책이다. 유니티 자체를 설명하기보다는 유니티를 사용해 게임을 만든다는 것이 어떠한 것인지 직접 경험을 통해 배우게 하는 것을 목적으로 한다. 그 이유는 이 책을 단순히 ’게임을 만들기 위한 기술’을 설명하는 것으로 그치게 하고 싶지 않았기 때문이다. 유니티 사용의 목표는 게임을 만드는 것이다. 결국 유니티의 사용법을 배우는 것은 물론, 무엇보다도 ’게임을 만드는 기술’을 습득할 필요가 있다는 의미다. ’게임을 만들기 위한 기술’이나 ‘게임을 만드는 기술’은 한정된 페이지 수 안에서 모두 정리할 수 있을 만큼 좁은 세계가 아니다. 그렇다면 적어도 그 광대한 세계로 발을 내딛는 데 도움이 될 수 있게 하자는 생각에서 이 책을 집필하게 되었다. 독자 분들 중에 단 한 사람이라도, 혹은 그 이상의 많은 사람들이 자신의 내면에 잠자고 있는 ’게임을 만드는 재능’을 일깨울 수 있기를 진심으로 기원한다. - 타카하시 케이지로 ---「저자 서문」 중에서 제대로 된 게임을 즐기기 위해 고사양의 데스크탑 PC를 장만하거나 플레이스테이션이나 엑스박스 같은 외국산 전용 게임기를 구입해 책상 위에 올려 놓고 뿌듯해 하던 시절이 있었다. 그러나 요즘에는 다소 부담(?)되는 이런 하드웨어가 없어도 누구라도 갖고 있는 스마트폰이나 웹브라우저상에서 가볍게 즐길 수 있는 게임도 넘쳐나고 있으며 게임은 우리 생활 속에 깊숙이 침투해 들어왔다. 게임을 즐기기 위한 하드웨어 장벽은 낮아지고 그에 맞추어 게임의 장르나 형태도 다양해졌다. 그래서 게임에 대한 접근성이 과거와는 비교할 수 없을 정도로 좋아졌지만 여전히 게임 콘텐츠를 개발하고 제작하는 일은 고단하고 어려운 일이다. 스마트폰의 작은 터치 스크린에서 앙증맞게 실행되는 게임조차도 완성도 있게 개발하기 위해서는 많은 시간과 다수의 재능 있는 사람들의 헌신이 필요하다. 게임을 즐기는 사람 입장에서는 요즘과 같은 다변화된 플랫폼 환경이 무척이나 즐겁겠지만 게임을 제작하는 입장에서는 고려해야 할 변수들이 더 많아졌다는 것을 의미한다. 게임 개발을 지원하는 기술이 빠른 속도로 향상되었다고는 하지만 동시에 게임의 완성도에 대한 소비자의 눈높이도 함께 높아졌으므로 기술의 향상이 개발자의 노고를 완전하게 덜어주지는 못한다. 이러한 상황에서 유니티는 다변화된 플랫폼 환경에 빠르게 대응할 수 있는 유연성과 게임 개발의 수고스러운 과정을 그래픽 유저 인터페이스를 통해 손쉽게 해결할 수 있는 강력한 편의성을 제공한다. 이 책을 손에 집어 든 독자라면 이미 유니티에 대해 상당한 지식을 갖추고 있거나 유니티의 특징과 장점에 대해서는 어느 정도 정보가 있을 것으로 생각되므로 유니티 자체에 대한 소개는 불필요할지도 모르겠다. 복잡한 CG 영상을 제작하는 툴이나, 통계 소프트웨어 등 강력한 기능을 제공하는 몇몇 훌륭한 소프트웨어의 경우, 그 모든 기능을 알고 있거나 다루는 사람은 극히 드물다. 하다못해 매일 같이 이용하는 워드 프로세서나 파워포인트 같은 오피스 제품들도 매우 기초적인 기능만을 활용하는 경우가 대부분이다. 유니티도 마찬가지다. 유니티가 제공하는 다양하고 강력한 기능들을 모두 다 익히기 위해서는 많은 시간과 노력이 필요할 것이다. 또한 유니티를 이용해 완성도 높은 게임을 개발하는 것이 목적이라면 책이나 매뉴얼에서 제시하는 여러 사례 외에도 독자 개인이 관심과 열정을 가지고 꾸준히 스스로 공부하고 연습해나가야 한다. 다시 말해 한 권의 책으로 유니티 활용법을 제대로 익히기에는 부족한 감이 없지 않다. 그럼에도 확실한 독자층을 설정하고 그에 맞게 잘 정리된 한 권의 책은 유니티를 처음 접하는 독자에게는 필수적이다. 좋은 책을 통해 빠른 시간 안에 유니티의 특징과 인터페이스, 활용 사례 등 기초적인 내용을 제대로 배워 두면 이후에 스스로 유니티의 고급 기능, 실제 응용 방법 등을 비교적 편하게 습득할 수 있기 때문이다. 이 책은 이런 면에서 상당히 좋은 입문서 역할을 할 수 있을 것으로 기대한다. 『유니티 입문』은 일본인 특유의 꼼꼼함과 친절함이 듬뿍 묻어있는 책이다. 책을 읽어 나가면 충분하게 느낄 수 있을 텐데, 중요하지만 의외로 지나쳐버리기 쉬운 것 하나하나 빠지지 않고 충실하게 기재되어 있고 각 챕터에서 기본적인 기능이 반복적으로 설명되므로 끝까지 읽다 보면 자연스레 필수적인 사용법을 완전히 자기 것으로 익히게 되는 효과가 있다. 무엇보다도 이 책의 장점은 간단하지만 하나의 게임을 끝까지 진행시켜 보는 데 있다. 게임 플레이의 핵심적인 기능은 물론, 타이틀 시작화면, 미션 클리어 시의 화면전환, 최종 플랫폼으로의 포팅 등 부차적이지만 게임이 갖추고 있어야 할 모든 부분을 학습하게 함으로써 유니티로 게임을 개발한다는 것이 어떤 것인지 체감할 수 있게 되어 있다. 이러한 장점 때문에 시중에 이미 유니티 관련 도서가 많이 나와 있지만 그 중에서도 『유니티 입문』만이 가지는 의미가 충분히 있을 것으로 확신한다 ---「옮긴이의 말」 중에서 |
|
일본에서 높은 호평을 받은 유니티 분야 베스트셀러!
Unity Japan 사의 에반젤리스트가 직접 저술한 멀티플랫폼 개발환경과 고성능 게임엔진 Unity3D 입문서 최신 유니티 4 버전을 완벽히 대응한 책! 유니티 4를 처음 접하는 독자뿐만 아니라 게임 개발 분야에 이제 막 입문한 초보자에게 매우 유용한 최고 가이드! [한국어판 특별 부록] 유니티 4.0에서 새롭게 추가된 기능 (글쓴이 이득우 / 『유니티 게임 개발의 정석』) 유니티 재팬 사의 에반젤리스트가 직접 저술한 이 책은 일본인 특유의 꼼꼼함과 친절함이 듬뿍 묻어있다. 유니티의 기본 기능이나 의외로 중요하지만 지나쳐버리기 쉬운 사소한 사항까지도 빠짐없이 기술되어 있고 각 장에서는 기본적인 기능이 반복적으로 설명되므로 끝까지 읽다 보면 자연스레 유니티의 필수적인 사용법을 완전히 자기 것으로 익히게 된다. 무엇보다도 이 책의 장점은 간단하지만 하나의 게임을 끝까지 진행시켜 보는 데 있다. 게임 플레이의 핵심적인 기능은 물론, 타이틀 시작화면, 미션 클리어 시의 화면전환, 최종 플랫폼으로의 포팅 등 부차적이지만 게임이 갖추고 있어야 할 모든 부분을 학습하게 함으로써 독자들이 게임 개발의 성취감을 맛보게 하고 게임 개발에 더 흥미를 느끼고 매진할 수 있도록 하는 훌륭한 자극제가 될 것이다. |