서브메뉴

본문

유니티 4 게임 프로그래밍 (실전 문제 해결을 위한)
유니티 4 게임 프로그래밍 (실전 문제 해결을 위한)
저자 : 맷 스미스|치코 케이로즈
출판사 : 에이콘출판
출판년 : 2014
ISBN : 9788960776173

책소개

유니티 3D 엔진으로 이용해 게임을 개발하려는 프로그래머를 위해, 실제 개발 과정에서 마주치는 사례 위주로 풀어쓴 책이다. 기초부터 고급 테크닉까지 폭넓게 다루고 있기 때문에, 처음 유니티를 접하는 입문자뿐만 아니라 어느 정도 경험을 쌓은 개발자 역시 이 책을 통해 많은 도움을 얻을 수 있다. 책에서 소개하는 예제는 가장 최근에 릴리스된 유니티 4.x 버전에 맞춰져 있기 때문에 최신 경향을 익히는 데도 유용하다.
[예스24에서 제공한 정보입니다.]

출판사 서평

★ 이 책에서 다루는 내용 ★

■ 유니티 Mecanim 시스템을 이용해 실시간 캐릭터 애니메이션을 향상한다.
■ 카메라, 이미지, 슈리켄(Shuriken) 시스템을 통해 미니맵, 줌 조절, 카메라 전환을 구현한다.
■ 인공지능 기법을 통해 NPC 오브젝트가 서로를 찾고, 따르고, 피하는 움직임을 구현한다. 또한 웨이포인트를 따라가거나, 무리지어 움직이게 만든다.
■ 게임을 마이크로소프트 키넥트(Microsoft Kinect) 카메라와 연결해, 캐릭터를 제어하거나 플레이어의 움직임을 캡처한다.
■ 실시간 레이더, 커스텀 마우스 커서, 아날로그 또는 디지털 시계, 색상 선택 대화상자, 마우스 오버 재질 하이라이트, 그래픽 진행 막대, 인벤토리 클래스 등을 통해 GUI를 향상한다.


★ 이 책의 대상 독자 ★
이 책은 유니티 스크립트와 멀티미디어 기능을 배우고 여러 부분의 게임 기능에 쉽게 적용하기를 원하는 모든 사람을 위해 쓰여졌다. 프로그래머는 멀티미디어 관련 기능을 익힐 수 있을 것이며, 반대로 디자이너는 스크립트를 다루는 방법을 알게 될 것이다.
초보자부터 숙련자까지, 혹은 아티스트에서 코더까지, 게임을 개발하는 사람이라면 누구에게나 유용한 책이다.


★ 이 책의 구성 ★

1장, ‘유니티 4.x 둘러보기’는 유니티 4.x에 익숙하지 않거나 지금 막 처음으로 접한 사용자를 위한 내용을 담고 있다. 1장에서는 소프트웨어 설치, 인터페이스 개념, 사용자 설정, 작업의 흐름에 대해 설명한다.

2장, ‘카메라 사용’은 게임 내에서 시점을 제어하고 개선하는 기법을 설명한다. 특히 단일 시점과 다중 시점을 동시에 고려할 수 있는 방법을 보여줄 것이다.

3장, ‘맵과 재질 생성’은 유니티 4.x에서 맵과 재질을 더 잘 이해할 수 있게 몇 가지 기법을 살펴본다. 3장의 내용은 비단 게임 아티스트가 아니더라도 이미지 편집 기술을 훈련하는 데 많은 도움이 될 것이다.

4장, ‘GUI 만들기’는 GUI(Graphic User Interface)에 인터랙티브한 시각 효과를 더해 게임의 흥미와 재미를 가져오는 방법을 다룬다. 또한 스크롤 휠을 통한 입력, 방향 안내를 위한 나침반, 레이더, 그래픽 인벤토리 아이콘 표시 등에 대해서도 살펴본다.

5장, ‘애니메이션 제어’는 유니티의 새로운 애니메이션 시스템인 Mecanim에 초점을 맞추고, 기본적인 캐릭터 설정부터 절차적 애니메이션과 래그돌 효과까지 모든 부분을 설명한다.

6장, ‘사운드 재생과 조작’은 사운드 효과를 만들고 음악을 삽입해 게임을 더욱 흥미롭게 만드는 방법을 살펴본다. 또한 재생 제어와 볼륨 제어 기법도 다룬다.

7장, ‘외부 리소스 파일과 디바이스 다루기’는 업데이트 데이터를 가져오거나 웹사이트와 동기화하는 등 어떻게 외부 데이터를 가져와 게임에 적용하는지 알아본다. 마이크로소프트 키넥트 같은 외부 장비는 게임의 상호작용을 완전히 바꿀 수 있는데, 이에 대해서도 살펴볼 것이다.

8장, ‘외부 텍스트 파일과 XML 데이터 다루기’는 텍스트 파일, 특히 XML 텍스트 데이터를 다루는 기법을 정리한다. XML 등 텍스트 기반 데이터는 보편적이고 유용하며, 사람에게나 컴퓨터에게나 인식하기 쉬운 형식이다.

9장, ‘오브젝트 상태와 움직임 제어’는 게임 내에서 컴퓨터가 객체와 캐릭터를 움직이는 경우에 관한 내용이다. 대부분의 게임은 애니메이션을 크게 고려할 필요가 없다. 하지만 인공지능을 통해 방향을 찾아야 할 경우에는 다르다. 9장에서는 이러한 방향 찾기 기법 등을 통해, 게임의 사용자 경험을 풍부하고 흥미롭게 향상하는 법을 다룬다.

10장, ‘추가 기능과 최적화로 개임 개선’은 게임에 추가 기능(일시정지, 슬로우 모션, 3D 입체영상, 보안 기능 등)을 추가하는 기법에 대해 살펴본다. 또한 게임의 효율성과 성능을 향상할 수 있도록 코드를 최적화하는 방법도 다룬다.

11장, ‘유니티 프로 살펴보기’는 유니티 프로(Unity Pro)에 추가된 기능을 간략하게 요약한 장이다. 여기서는 사운드, 텍스처 렌더링, 비디오 텍스처, 이미지 효과 등에 대한 기법을 살펴본다.
[예스24에서 제공한 정보입니다.]

목차정보

1장 유니티 4.x 둘러보기
__소개
__유니티 4.x 설치
__초기 환경 설정
__사용자 인터페이스 이해와 최적화
__생성된 애셋을 프리팹으로 저장하기
__유니티 콘텐츠 둘러보기
__사용자 콘텐츠 가져오기
__프로젝트에 유니티 패키지 가져오기
__프로젝트에 사용자 패키지 가져오기
__프로젝트에서 사용자 패키지 내보내기
__퀵 리스트에 사용자 패키지 추가하기
__프로젝트 브라우저 사용

2장 카메라 사용
__소개
__PIP 효과 만들기
__카메라 전환
__렌즈 플레어 효과 꾸미기
__화면 콘텐츠로 텍스처 만들기
__망원 카메라로 줌 조절
__관찰 카메라 만들기
__슈리켄을 이용해 파티클 효과 만들기
__미니맵 표시

3장 맵과 재질 생성
__소개
__반사 재질 생성
__발광 재질 생성
__스페큘러 텍스처 맵 생성
__투명 텍스처 맵 생성
__쿠키 텍스처를 이용한 흐린 풍경 시뮬레이션
__색상 선택 대화상자 생성
__GUI로 실시간 텍스처 혼합
__마우스로 재질 하이라이팅
__재질 배열을 이용한 텍스처 애니메이션(비디오 흉내 내기 등)
__재질 컬링 비활성화

4장 GUI 만들기
__소개
__디지털 시계 표시
__아날로그 시계 표시
__나침반으로 플레이어 방향 표시
__레이더로 오브젝트의 상대 위치 표시
__이미지로 특정 정수 값 표시
__이미지로 특정 부동소수점 및 범위 값 표시
__디지털 카운트다운 타이머 표시
__시각적으로 카운트다운 타이머 표시(5, 4, 3, 2, 1 - 발사)
__원형 차트 스타일로 카운트다운 타이머 표시
__스르르 사라지는 메시지 표시
__오브젝트 선택 시 인벤토리 텍스트 표시
__오브젝트 선택 시 인벤토리 아이콘 표시
__PickUp 클래스를 통한 일반적인 인벤토리 관리
__마우스 휠로 스크롤바 제어
__마우스 커서 아이콘 변경

5장 애니메이션 제어
__소개
__캐릭터 아바타 설정과 정지 애니메이션
__루트 모션과 블렌드 트리를 이용해 캐릭터 움직이기
__레이어와 마스크로 애니메이션 조합
__스크립트로 루트 모션 오버라이딩
__움직이는 캐릭터에 강체 요소 추가하기
__움직이는 캐릭터로 오브젝트 던지기
__캐릭터에 래그돌 효과 적용
__캐릭터 몸통을 회전해 조준하기

6장 사운드 재생과 조작
__소개
__애니메이션 속도에 오디오 피치 맞추기
__볼륨 컨트롤 추가하기
__리버브 존을 통한 터널 환경 시뮬레이션
__오디오 클립 중복 재생 방지
__오브젝트가 자동적으로 파괴될 때까지 오디오 재생하기
__다이내믹 사운드트랙 만들기

7장 외부 리소스 파일과 디바이스 다루기
__소개
__외부 리소스 파일 로딩: 유니티 기본 리소스 이용
__외부 리소스 파일 로딩: 유니티 리소스 폴더에 파일 직접 저장
__외부 리소스 파일 로딩: 인터넷에서 파일 다운로드
__플레이어 데이터 입출력: 정적 속성 이용
__플레이어 데이터 입출력: PlayerPrefs 이용
__게임 스크린샷 저장
__Zigfu 샘플을 이용해 마이크로소프트 키넥트로 유니티 캐릭터 조종하기
__마이크로소프트 키넥트 컨트롤러로 캐릭터 애니메이션 구현하기
__마이크로소프트 키넥트 컨트롤러로 움직임을 저장해 모션 캡처 구현하기
__PHP/MySQL로 순위표 만들기

8장 외부 텍스트 파일과 XML 데이터 다루기
__소개
__TextAsset 공용 변수를 사용해 외부 텍스트 파일 불러오기
__C# 파일 스트림을 사용해 외부 텍스트 파일 불러오기
__C# 파일 스트림으로 외부 텍스트 파일 저장하기
__외부 XML 파일 불러오고 파싱하기
__XMLWriter를 사용해 XML 텍스트 데이터 생성하기
__직렬화를 통해 XML 텍스트 데이터 자동 생성하기
__XMLDocument.Save()로 XML 데이터를 텍스트 파일에 저장하기

9장 오브젝트 상태와 움직임 제어
__소개
__플레이어 컨트롤로 정육면체 움직임 제어
__오브젝트 시선 방향 제어
__오브젝트 상호 움직임 제어(찾기, 도망가기, 쫓아가기)
__무리진 오브젝트 그룹 움직임 제어
__초기 속도를 통한 오브젝트 발사 효과 구현
__무작위 스폰 지점 만들기
__가장 가까운 스폰 지점 찾기
__순서대로 웨이포인트 따라가기
__상태를 통한 오브젝트 행동 제어
__상태 패턴을 통한 복잡한 오브젝트 행동 제어

10장 추가 기능과 최적화로 게임 개선
__소개
__게임 일시정지
__슬로우 모션 구현
__편광 투과를 이용한 3D 입체화면 구현
__모르는 서버의 게임 실행 차단
__코드 프로파일링을 통해 성능 ‘병목현상’ 찾기
__자동 ‘소거’를 통해 오브젝트 숫자 줄이기
__오브젝트 중단을 통해 활성 오브젝트 숫자 줄이기
__델리게이트와 이벤트를 통한 효율성 향상(그리고 SendMessage 방지!)
__코루틴을 통해 메소드를 주기적이고 독립적으로 실행하기
__코루틴으로 긴 계산을 여러 프레임으로 분산하기

11장 유니티 프로 살펴보기
__소개
__심도를 통해 동적으로 오브젝트 포커싱하기
__백미러 만들기
__씬 내부에 동영상 재생하기
__오디오 필터로 수중 환경 시뮬레이션하기
__외부 동영상 파일 불러와 재생하기
[교보문고에서 제공한 정보입니다.]