Top

유니티 엔진 기술과 게임 개발 방법론 완벽 마스터 (세트)

  • 지은이이득우, 페니 드 빌
  • 옮긴이박기성
  • ISBN : 9788960774681
  • 78,000원
  • 2013년 09월 06일 펴냄
  • 페이퍼백 | 1,204쪽 | 188*250mm
  • 시리즈 : 게임 개발 프로그래밍

책 소개

[ 세트 구성: 전2권 ]

1) 『(개정판) 유니티 4 게임 개발의 정석: 유니티 사용 기초부터 실전 개발 노하우까지 Unity의 모든 것』
2) 『유니티로 만드는 게임 개발 총론: 게임 개발 원리에서 기획, 그래픽, 프로그래밍까지』


『(개정판) 유니티 4 게임 개발의 정석』 소개

유니티 분야 국내 최고 베스트셀러가 개정판으로 내용을 확장해 새롭게 돌아왔다. 유니티 입문자를 위한 기본적인 사용법과 유니티를 이용해 게임을 개발하기 위한 다양한 기능들을 이론과 함께 정리한 유니티 게임 전문 개발서다. 협업의 노하우가 담긴 유니티 엔진의 사용법과 함께 종합 기술이 집약된 게임 제작 기술을 전반적으로 이해할 수 있게 지형, 렌더링, 셰이더, 물리 엔진, 스크립팅, 애니메이션, 사운드, 파티클 이펙트 같은 기본적인 요소를 이론과 함께 설명하며, 실무 게임 개발에서 참고할 수 있게 라이트매핑, 오클루젼 컬링, 최적화와 배포 같은 고급 기능을 다양한 예제와 함께 총망라했다. 특히 개정판에서 새로 실린 부록에서는 ‘확장 도구를 활용한 네트워크 게임 제작’ 기법도 다룬다.

이 책에서 다루는 내용
■ 기본 인터페이스 사용법과 실무에서 반드시 알아야 할 기능 소개
■ 판타지 세계의 창조와 환경설정, 그리고 탐험
■ 유니티 렌더링 시스템을 통해 살펴보는 컴퓨터 그래픽스의 구성 요소
■ 블록을 연결하는 방식으로 쉽게 따라할 수 있는 유니티 셰이더 제작 기법
■ 물리 엔진의 기초 이론과 각종 물리 시뮬레이션 및 충돌 감지 시스템의 구현
■ 캐릭터 컨트롤러를 사용한 기본 캐릭터 이동 구현
■ 물리 엔진을 활용한 자동차 이동 구현
■ 스크립트의 기초를 활용한 간단한 게임 제작
■ 다양한 애니메이션 기능과 활용법
■ 게임의 결과물을 향상시키기 위한 전문적인 이펙트 기능
■ 상용 게임 제작을 위해 반드시 알아야 할 최적화 기법
■ 멀티플랫폼 빌드 과정과 플랫폼별 세부 기능에 대한 이해
■ NGUI, ex2D 플러그인을 사용한 기초 GUI와 2D 애니메이션 제작
■ 네트워크 게임 제작


『유니티로 만드는 게임 개발 총론』 소개

유니티는 프로그래머뿐만 아니라 기획자와 그래픽 디자이너에게도 자신의 상상력을 실현시킬 수 있는 가능성을 제공함으로써 게임 개발의 새로운 장을 열고 있다. 이 책은 얕은 깊이의 단순한 기능적 설명에 그치지 않고, 게임 개발의 근본 원리부터 설명한 다음, 치밀하게 준비된 단계별 실습을 통해 게임 개발 원리를 유니티에서 직접 경험해 보게 해줌으로써, 강력한 게임 개발 도구로서 유니티에 자연스럽게 빠져들게 만드는 책이다. 2011년 유니티 본사에서 시상한 유니티 모바일 세대 위대한 교육상 수상자인 페니 드 빌 박사의 회심의 역작이다.

이 책에서 다루는 내용
■ 게임 아트와 프로그래밍 과제를 모두 해결해야 하는 개인 개발자와 소규모 팀을 위한 원스톱 해결서
■ 유니티에서 아트 애셋으로 차례차례 따라 하며 게임 전체를 디자인하고 구성하는 방법
■ 기본적인 2D와 3D 관련 수학과 물리 개념
■ 마음껏 사용할 수 있는 무료 게임 메커니즘 모음
■ 프로젝트 소스 코드, 안내 동영상, 아트 애셋 등의 수업 자료를 제공하고, 질의응답을 통한 심층적인 학습을 돕는 웹사이트 제공(www.holistic3d.com)

[ 상세 이미지 ]

저자/역자 소개

[ 저자 소개 ]

이득우
유니티 테크놀로지스 코리아의 이사로 근무하며 국내외의 각종 유니티 교육, 세미나 등의 행사를 진행한 국내 최고의 유니티 전문가다.
게임 제작에 관심 있는 사람들을 위한 스크립트 기초 과정부터 현직 게임 개발자들을 위한 전문 과정까지 다양한 종류의 유니티 교육 프로그램을 진행하고 있으며, 홈페이지(http://unitystudy.net)와 페이스북 페이지(http://www.facebook.com/UnityGameDev)를 통해 유니티에 관련된 궁금한 부분과 문제들을 해결해주고 있다.


페니 드 빌 (Penny De Byl)
호주 본드대학교(Bond University) 인문사회과학부 교수다. 20년 가까이 유수 대학에서 컴퓨터 공학과 컴퓨터 그래픽, 게임 개발을 가르쳐 왔다. 지금까지 컴퓨터 게임용 인공지능 프로그래밍에 대한 책 두 권을 썼고, 2011년에는 유니티 테크놀로지스의 ‘유니티 모바일 세대의 위대한 교육자 상(Unity Mobile Generation Great Education Giveaway)’을 수상했다.


[ 역자 소개 ]

박기성
게임 개발을 중심으로 IT업계에 20년째 근무하고 있고, 최근에는 다수의 스마트폰 게임 개발 프로젝트를 진행하고 있다. 전문 분야나 관심 분야의 책을 번역하기도 하며, 역서로는 에이콘 출판사의 『Gamification & 소셜게임』(2011년), 『두 얼굴의 구글』(2012년), 『코코스2d 게임 프로그래밍』(2012년)이 있다. 첫째 아들 지유와 함께 시간을 보낼 때 가장 즐겁다.

목차

목차
  • 『(개정판) 유니티 4 게임 개발의 정석』
  • 1장 유니티 소개
    • 1.1 유니티 엔진의 역사
    • 1.2 유니티 기능 둘러보기
      • 통합 인터페이스
      • 멀티플랫폼 지원
      • 통합 애셋 시스템
      • 현실감 있는 렌더링 시스템
      • 셰이더 시스템
      • 지형 생성 기능
      • 오디오 기능
      • 애니메이션 기능
      • 파티클 시스템
      • 물리 엔진 기능
      • 프로그래밍 기능
      • 2D 게임 제작
      • 최적화를 위한 기능
      • 테스트 기능
    • 1.3 유니티 설치
    • 1.4 간단한 실습
      • 자바 SE SDK 설치
      • 안드로이드 SDK 설치
      • 스마트폰 기기 드라이버
      • 유니티 내 안드로이드 환경설정
    • 1.5 유니티 시작
    • 1.6 결론
  • 2장 유니티 인터페이스
    • 2.1 인터페이스 개요
      • 뷰 공용 인터페이스
      • 뷰 배치(View Layout)
    • 2.2 게임 오브젝트와 컴포넌트
      • 물체의 생성
      • 빛의 추가
    • 2.3 씬 뷰
      • 씬 뷰의 조작
      • 씬 기즈모
      • 트랜스폼 툴(Transform Tool)
      • 트랜스폼 기즈모 설정
      • 씬 뷰 컨트롤 바
    • 2.4 계층 뷰
    • 2.5 프로젝트 뷰
    • 2.6 인스펙터 뷰
      • 게임 오브젝트의 설정
      • 애셋의 설정
      • 브라우저 대화상자
      • 고정(Lock) 기능
    • 2.7 게임 뷰
    • 2.8 콘솔 뷰
    • 2.9 스냅 기능
      • 스냅(Snap) 기능
      • 정점 스냅(Vertex Snap) 기능
      • 표면 스냅(Surface Snap) 기능
    • 2.10 기타 유용한 기능
      • 뷰로 이동(Move To View) 기능
      • 뷰에 정렬(Align With View) 기능
    • 2.11 유니티 프로젝트 구성
      • 씬, 게임 오브젝트, 컴포넌트의 관계
      • 애셋(Asset)
    • 2.12 패키지 시스템
      • 패키지 불러오기
      • 패키지 내보내기
      • 유니티 기본 패키지
    • 2.13 프리팹(Prefab) 시스템
      • 프리팹 연습
      • 프리팹 메뉴
    • 2.14 정리
  • 3장 지형 시스템
    • 3.1 지형 시스템의 이해
    • 3.2 높낮이 설정
    • 3.3 텍스처 설정
    • 3.4 나무 배치
    • 3.5 풀밭과 바위 조성
    • 3.6 기타 설정
      • Base Terrain 설정
      • Tree & Detail Object 설정
      • Wind 설정
      • Heightmap 불러오기/내보내기
    • 3.7 환경 컴포넌트
      • 안개
      • 스카이박스
      • 물 패키지
      • 플레어 효과
      • 프로젝터
    • 3.8 1인칭 컨트롤러 사용
    • 3.9 3인칭 컨트롤러 사용
    • 3.10 결론
  • 4장 렌더링 시스템의 기초
    • 4.1 렌더링 컴포넌트
    • 4.2 메시
    • 4.3 모델링 데이터 불러오기
      • 정점 데이터의 증가
      • 모델링 표준 포맷
      • 3차원 좌표계
      • 유니티 스케일
      • 삼각면의 법선 방향
    • 4.4 재질
    • 4.5 텍스처
      • 텍스처 용도 설정
      • UV와 Wrap 모드
      • Filter Mode와 Aniso Level
      • 밉맵
      • 플랫폼과 해상도 설정
      • 큐브맵 텍스처
      • 렌더 텍스처
      • 절차적 텍스처
    • 4.6 서브메시
    • 4.7 카메라
      • 시야 절두체
      • 다중 카메라 활용
    • 4.8 라이트
      • 앰비언트 라이트
      • 스포트 라이트
      • 포인트 라이트
      • 쿠키
    • 4.9 그림자
      • 그림자 캐스케이드 설정
      • 물체의 그림자 설정
    • 4.10 정리
  • 5장 셰이더 시스템
    • 5.1 렌더링 패스
    • 5.2 유니티 내장 셰이더
      • 디퓨즈 모델
      • 스페큘러 모델
      • 범프드 모델
      • 트랜스패런트 모델
      • 트랜스패런트 컷아웃 모델
      • 셀프 일루민 모델
      • 리플렉티브 모델
      • 버텍스릿 셰이더
      • 언릿 모델
      • 디캘 모델
      • 모바일 셰이더 그룹
    • 5.3 셰이더 제작
      • SSE 설치
      • SSE 시스템 구성
      • SSE 사용법
      • 픽셀 그래프 마스터 노드
      • 셰이더 제작
    • 5.4 셰이더 기능 추가
      • 범프드 기능 추가
      • 하이라이트 기능 추가
      • 셀프 일루민 기능 추가
      • 리플렉티브 기능 추가
      • 디캘 기능 추가
      • 림라이팅
    • 5.5 셰이더 랩
      • 셰이더 이름과 속성 영역
      • 서브셰이더
      • 태그
      • 패스
      • 유니티 셰이더 프로그램
      • 고정 함수 프로그램 예제 분석
    • 5.6 정리
  • 6장 물리 엔진
    • 6.1 물리 엔진의 구성 요소
      • 리지드바디
      • 충돌체
      • 물리 재질
    • 6.2 간단한 시뮬레이션
    • 6.3 트리거 시스템
    • 6.4 물리 시스템의 활용 정리
    • 6.5 예측 질의
    • 6.6 캐릭터 컨트롤러
    • 6.7 자동차 시뮬레이션
    • 6.8 조인트
      • 힌지 조인트
      • 고정 조인트
      • 스프링 조인트
      • 캐릭터 조인트
      • 설정 조인트
    • 6.9 기타 구성 요소
      • 랙돌
      • 물리 환경 설정
    • 6.10 정리
  • 7장 스크립팅 시스템
    • 7.1 스크립팅 생성
      • 프레임 함수
      • 인터페이스와의 연결
    • 7.2 트랜스폼 스크립팅
      • 프레임 타임의 활용
      • 입력 관리자
      • 물체의 회전
      • 로컬 축의 이동
    • 7.3 물리 스크립팅
      • 물체의 복제
      • 힘의 전달
      • 이벤트 함수
    • 7.4 2D 게임 제작
      • 스프라이트 컴포넌트
      • 게임 프로토타입 제작
      • 장애물과 GUI 제작
      • 스테이지 관리
    • 7.5 에디터 확장
      • 인스펙터 확장
      • 기즈모와 핸들
      • 에디터 윈도우
      • 씬 윈도우
    • 7.6 정리
  • 8장 애니메이션 시스템
    • 8.1 2D 애니메이션과 코루틴
      • 애니메이션 스프라이트 컴포넌트
      • 코루틴
    • 8.2 애니메이션 이징
    • 8.3 유니티 애니메이션 시스템
    • 8.4 스키닝 애니메이션
    • 8.5 유니티 4 애니메이션 시스템: 메카님
      • 메카님 소개
      • 아바타 설정
      • 애니메이션 클립 설정
      • 애니메이션 설계
      • 애니메이션 스크립팅
    • 8.6 기본 애니메이션 시스템
      • 애니메이션 합성
      • 애니메이션 결합
      • 애니메이션 복제
      • 애니메이션의 관리
    • 8.7 정리
  • 9장 이펙트 시스템
    • 9.1 라이트매핑
      • 라이트 매핑 인터페이스
      • 게임 오브젝트 설정
      • 라이트매핑 설정
      • 라이트매핑 제작과 보정
      • 듀얼 라이트 매핑
      • 디렉셔널 라이트매핑
      • 라이트 프로브
    • 9.2 포스트 이펙트
      • 안티에일리어싱
      • 블룸
      • 피사계 심도
      • 경계선 탐지
      • 모션 블러
      • SSAO
      • Sun Shaft 효과
    • 9.3 유니티 파티클 시스템: 슈리켄
      • 입력 컨트롤
      • 입자 생성 관련 모듈
      • 입자 변화 관련 모듈
      • 입자 렌더링 관련 모듈
      • 파티클 시스템 스크립팅
    • 9.4 예전 유니티 파티클 시스템
      • 파티클 이미터
      • 파티클 애니메이터
      • 파티클 렌더러
      • 파티클 충돌체(Particle Collider)
    • 9.5 사운드 이펙트
      • 사운드 컴포넌트
      • 오디오 임포터(Audio Importer)
      • 사운드 효과
    • 9.6 정리
  • 10장 최적화
    • 10.1 게임 프로세스
    • 10.2 프로파일러
      • CPU 사용량 영역
      • GPU 사용량 영역
      • 렌더링 영역
      • 메모리 영역
      • 오디오 영역
      • 물리 영역
      • 내장 프로파일러
      • 원격 접속 프로파일링
    • 10.3 컬링
      • 프러스텀 컬링
      • 레이어별 차단 거리 설정
      • 오클루젼 컬링
      • 오클루젼 영역 설정
      • 오클루젼 컬링 데이터 제작
      • 최종 결과 시뮬레이션
      • 오클루젼 포털
    • 10.4 드로우 콜
      • 텍스처 아틀라스
      • 배칭
    • 10.5 최적화 팁
      • 텍스처 이미지 최적화
      • 오버드로우
      • 물리 엔진 최적화
      • 프로그래밍 최적화
    • 10.6 정리
  • 11장 배포 시스템
    • 11.1 빌드 시스템
      • 플랫폼 변경
      • 빌드 설정
      • 프로그램 제작
    • 11.2 데스크탑 플랫폼 배포
    • 11.3 웹 플랫폼 배포
      • 스트리밍 기능
      • 보안 샌드박스
      • 웹 브라우저와의 연동
    • 11.4 iOS 배포
      • 최종 프로그램 크기
      • 기타 고려 사항
      • 아이폰 하드웨어 특징
    • 11.5 안드로이드 배포
      • 빌드 설정
      • 안드로이드 확장 개발
      • 이클립스 프로젝트 연동
      • 유니티 리모트
      • 안드로이드 앱 제작 시 고려 사항
    • 11.6 애셋번들
      • 애셋번들의 생성
      • 애셋번들 불러오기
      • 애셋번들의 관리
      • 애셋번들 사용 시 주의 사항
    • 11.7 정리
  • 부록 A 확장 도구를 활용한 네트워크 게임 제작
    • A.1 확장 도구 설치
      • 아이트윈
      • ex2D
      • NGUI
      • 포톤 클라우드
      • 마무리
    • A.2 게임의 설계
      • 클래스 소개
      • 실습 게임 소개
      • 야구 게임의 설계
    • A.3 야구 게임의 싱글플레이
      • MainGame과 야구공의 구현
      • Strike Zone의 구현
      • 타자의 구현
      • 마무리
    • A.4 야구 게임의 멀티플레이
      • 포톤 네트워크 연결
      • MainGame 네트워킹 객체로 개조
      • Hitter 네트워킹 객체로 개조
      • Strike Zone 네트워킹 객체로 개조
      • Ball 네트워킹 객체로 개조
      • 마무리

  • 『유니티로 만드는 게임 개발 총론』
  • 1장 프로그래밍 메커니즘의 예술
    • 1.1 들어가며
    • 1.2 우뇌 프로그래밍
    • 1.3 좌뇌에서 시작되는 아트 작업
      • 1.3.1 점
      • 1.3.2 선
      • 1.3.3 형태
      • 1.3.4 방향
      • 1.3.5 크기
      • 1.3.6 텍스처
      • 1.3.7 색상
    • 1.4 게임 엔진의 동작
      • 1.4.1 범용 게임 엔진
      • 1.4.2 메인 루프
    • 1.5 스크립트 기초
      • 1.5.1 논리
      • 1.5.2 주석
      • 1.5.3 함수
      • 1.5.4 변수
      • 1.5.5 연산자
      • 1.5.6 조건문
      • 1.5.7 배열
      • 1.5.8 오브젝트
    • 1.6 게임 아트 애셋 입문
      • 1.6.1 2제곱 규칙
      • 1.6.2 다른 사람들이 만든 아트 애셋 활용
    • 1.7 요약
  • 2장 실세계 메커니즘
    • 2.1 들어가며
    • 2.2 벡터의 원리
    • 2.3 2D와 3D 공간의 정의
      • 2.3.1 카메라
      • 2.3.2 로컬과 월드 좌표계
      • 2.3.3 이동과 회전, 스케일링
      • 2.3.4 폴리곤과 노멀
    • 2.4 3D 게임 엔진에서의 2차원 게임
      • 2.4.1 사원수
    • 2.5 물리학 법칙
      • 2.5.1 중력의 법칙
      • 2.5.2 운동 제1법칙
      • 2.5.3 운동 제2법칙
      • 2.5.4 운동 제3법칙
    • 2.6 물리학과 애니메이션 원리
      • 2.6.1 찌그러짐과 늘어남
    • 2.7 게임 공간 최적화를 위한 2D와 3D 기법
      • 2.7.1 폴리곤 줄이기
      • 2.7.2 카메라 뷰 볼륨
      • 2.7.3 안개
      • 2.7.4 텍스처
      • 2.7.5 빌보드
    • 2.8 요약
  • 3장 애니메이션 메커니즘
    • 3.1 들어가며
    • 3.2 스프라이트
    • 3.3 텍스처 아틀라스
    • 3.4 애니메이션이 들어간 스프라이트
    • 3.5 베이킹된 3D 애니메이션
    • 3.6 생체 역학
    • 3.7 애니메이션 관리
      • 3.7.1 단일 2D 스프라이트 액션
      • 3.7.2 단일 파일의 3D 애니메이션
      • 3.7.3 블렌딩
    • 3.8 2차 애니메이션
    • 3.9 요약
  • 4장 게임 규칙과 메커니즘
    • 4.1 들어가며
    • 4.2 게임 메커니즘
    • 4.3 주요 메커니즘
      • 4.3.1 탐색
      • 4.3.2 매칭
      • 4.3.3 분류
      • 4.3.4 운
      • 4.3.5 혼합
      • 4.3.6 타이밍
      • 4.3.7 진척
      • 4.3.8 포획
      • 4.3.9 정복
      • 4.3.10 회피
      • 4.3.11 수집
    • 4.4 간단한 게임 메커니즘 개발
      • 4.4.1 매칭과 분류
      • 4.4.2 발사, 타격, 튀기, 쌓기
      • 4.4.3 경주
      • 4.4.4 회피와 수집
      • 4.4.5 탐색
    • 4.5 보상과 벌칙
    • 4.6 요약
  • 5장 캐릭터 메커니즘
    • 5.1 들어가며
    • 5.2 가시선
    • 5.3 그래프 이론
    • 5.4 경유지
      • 5.4.1 경유지 탐색
    • 5.5 유한 상태 기계
    • 5.6 군집
    • 5.7 결정 트리
    • 5.8 퍼지 로직
    • 5.9 유전자 알고리즘
    • 5.10 셀룰러 오토마타
    • 5.11 요약
  • 6장 플레이어 메커니즘
    • 6.1 들어가며
    • 6.2 게임 구조
    • 6.3 게임 인터페이스 디자인 원리
      • 6.3.1 사용자 분석
      • 6.3.2 은유
      • 6.3.3 기능 노출
      • 6.3.4 일관성
      • 6.3.5 상태 시각화
      • 6.3.6 단축키
      • 6.3.7 레이아웃
      • 6.3.8 초점
      • 6.3.9 도움말
    • 6.4 인벤토리
    • 6.5 순간이동
      • 6.5.1 묵시적 순간이동
      • 6.5.2 명시적 순간이동
    • 6.6 요약
  • 7장 환경 메커니즘
    • 7.1 들어가며
    • 7.2 맵 디자인 기초
      • 7.2.1 강조점을 제공하라
      • 7.2.2 플레이어의 이동을 인도하고 제한하라
      • 7.2.3 비례
      • 7.2.4 디테일
      • 7.2.5 맵 레이아웃
      • 7.2.6 기타 고려사항
    • 7.3 지형
      • 7.3.1 지형 그리기
      • 7.3.2 절차적 지형
      • 7.3.3 절차적 도시
      • 7.3.4 무한 지형
    • 7.4 카메라 기법
      • 7.4.1 심도
      • 7.4.2 블러
      • 7.4.3 그레이스케일
      • 7.4.4 모션 블러
      • 7.4.5 세피아 톤
      • 7.4.6 트윌
      • 7.4.7 블룸
      • 7.4.8 플레어
      • 7.4.9 색 보정
      • 7.4.10 외곽선 검출
      • 7.4.11 크리스
      • 7.4.12 어안
      • 7.4.13 선 샤프트
      • 7.4.14 비네트
      • 7.4.15 화면 공간 SSAO
    • 7.5 하늘
      • 7.5.1 스카이박스
      • 7.5.2 스카이 돔
      • 7.5.3 구름
    • 7.6 날씨
      • 7.6.1 바람
      • 7.6.2 강수
    • 7.7 파티클
    • 7.8 요약
  • 8장 외부 연결 메커니즘
    • 8.1 들어가며
    • 8.2 모바일 기기에서 실행하기
    • 8.3 햅틱과 외부 모션 통합하기
    • 8.4 모바일 하드웨어 기능 활용하기
      • 8.4.1 가속도계
      • 8.4.2 방향
      • 8.4.3 웹 서비스
      • 8.4.4 위성위치확인시스템 GPS
      • 8.4.5 증강 현실
    • 8.5 소셜 메커니즘
      • 8.5.1 트위터
      • 8.5.2 페이스북
      • 8.5.3 오픈페인트
    • 8.6 플랫폼 배포: 앱스토어, 안드로이드 마켓 및 콘솔
      • 8.6.1 앱스토어와 안드로이드 마켓 게임 출시
      • 8.6.2 콘솔 발매
      • 8.6.3 플레이어가 직접 다운로드

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안