유니티 3D RPG 게임은 이렇게 만든다 [RPG 게임 개발의 시작]
- 원서명Building an RPG with Unity 5.x: Unleash the full potential of Unity to build a fully playable, high-quality multiplayer RPG (ISBN 9781785285004)
- 지은이바헤 카라미언(Vahé Karamian)
- 옮긴이최동훈
- ISBN : 9791161751801
- 30,000원
- 2018년 07월 25일 펴냄
- 페이퍼백 | 424쪽 | 188*235mm
- 시리즈 : acorn+PACKT, 게임 개발 프로그래밍
책 소개
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
요약
RPG를 제작하는 데 필요한 거의 모든 내용들이 담겨 있는 책이다. RPG의 게임 정의에서 출발해, 기술적인 내용은 물론이고 RPG를 제작하는 데 필요한 기획 및 아트에 대해서도 배울 수 있다. 실제 RPG 제작 경험이 없는 개발자가 RPG를 제작한다는 가정하에 스토리 라인 설정부터 네트워크 플레이 개발 방법까지 담고 있다. RPG 제작의 이론과 실전에 대한 내용이 적절하게 조화를 이루고 있다. RPG 장르를 개발해보고 싶은 개발자라면 시작점으로 삼기 좋은 책이다.
이 책에서 다루는 내용
■ 인벤토리, 장비, 캐릭터, 적, 퀘스트, 게임 이벤트의 프레임워크 제작
■ 신과 에셋의 로드 및 언로드 방법
■ 멀티플레이어 RPG 게임 설정
■ 사용자 입력 및 피드백을 위한 UI 설계
■ RPG의 모든 측면을 다루는 게임 마스터 강화
■ 커스텀 경로 탐색 시스템 개발
■ 캐릭터 및 NPC AI 구현
이 책의 대상 독자
RPG 제작에 필요한 유니티 기술을 배우고 적용하고 싶은 독자를 위한 책이다. 프로그래밍에 관해 기본적인 이해와 개념을 알고, 유니티 IDE의 기본에 능숙하다는 전제하에 집필했다. 독자적인 게임 제작을 경험하는 데 적용할 수 있는 핵심 개념과 각 주제는 힘 있고 단단한 토대가 될 것이다.
이 책의 구성
1장, '시작'에서는 롤 플레잉 게임의 배경 지식을 제공한다. 역사적 측면을 몇 가지 다루고, 출시된 롤 플레잉 게임들을 살펴본다. 롤 플레잉 게임의 주요 특징을 논의하고 몇 가지의 관련 기술과 독자가 1장 이후 준비해야 할 내용을 다룬다.
2장, '분위기 조성'에서는 게임 테마를 정하고 분위기를 조성한다. 게임 제작에 필요한 여러 가지 에셋과 리소스를 논의하고 3인칭 캐릭터 컨트롤러를 소개한다. 레벨과 스크립트 초기 버전을 제작한다.
3장, '캐릭터 디자인'에서는 캐릭터와 캐릭터 데이터를 정의하는 방법을 논의한다. 캐릭터 모델을 위한 메카님(mecanim), 애니메이터(animator), 상태 기계(state machine), 블렌드 트리(blend tree), 역운동학(inverse kinematics), 커스텀 캐릭터 컨트롤러 스크립트에 대해 살펴본다.
4장, '플레이어 캐릭터와 비플레이어 캐릭터'에서는 디자인, 캐릭터 모델의 구조에 대해 논의하고 비플레이어 캐릭터를 정의한 후 경로 찾기, 애니메이터 컨트롤러, NPC A.I. 스크립트 초기 버전을 살펴본다.
5장, '게임 마스터와 게임 메카닉'에서는 게임 마스터 스크립트를 한층 강화한다. 레벨 컨트롤러 스크립트 및 오디오 컨트롤러 스크립트를 소개한다. 캐릭터 데이터 및 캐릭터 커스터마이징 상태의 저장에 대해 논의한다. 그리고 메인 메뉴 사용자 인터페이스 초기 버전에 대해 이야기한다.
6장, '인벤토리 시스템'에서는 일반적인 인벤토리 시스템 제작 방법을 다룬다. 필요한 스크립트와 인벤토리 아이템의 에셋/프리팹을 작성하고 인벤토리 사용자 인터페이스를 설계하고 인벤토리 시스템과 그 시스템의 아이템을 어떻게 나타낼 것인지 설계한다.
7장, '사용자 인터페이스와 시스템 피드백'에서는 헤드 업 디스플레이, 플레이어 캐릭터 정보 패널, 활성 인벤토리 아이템 패널, 특수 인벤토리 아이템 패널의 설계와 구현에 대해 논의 후, 실제로 설계하고 구현한다. 비플레이어 캐릭터 생명력 바와 UI 또한 설계, 구현한다.
8장, '멀티플레이어 설정'에서는 유니티의 Unet 아키텍처를 활용한 멀티플레이어 프로그래밍에 대해 논의한다. 두 가지 예제 프로젝트를 활용해 멀티플레이어 프로그래밍 개념을 살펴본다. 첫 번째 프로젝트는 탱크 게임으로, 서버 클라이언트 및 데이터 동기화의 개념을 보여준다. 두 번째 프로젝트는 지금까지 배웠던 내용을 캐릭터 모델과 함께 신 제작에 적용한다.
목차
목차
- 1장. 시작
- 간략한 역사
- RPG의 특성
- 스토리 및 설정
- 탐험과 퀘스트
- 탐험과 퀘스트 맛보기
- 인벤토리 시스템
- 캐릭터 개발
- 경험치와 레벨링
- 전투 시스템
- 사용자 인터페이스와 그래픽
- 기존 혹은 향후의 RPG 게임들
- 다크 소울 3
- 폴아웃 4
- 디바이너티: 오리지널 신
- RPG의 패턴
- 전문 용어
- 콘테스트 트리
- Last Man Standing
- 협상 콘테스트
- 요약
- 2장. 분위기 조성
- RPG 제작하기
- 자자르 왕조의 이야기
- 플롯
- 탐험과 퀘스트
- 에셋 인벤토리
- 환경 에셋
- 캐릭터 에셋
- 레벨 디자인
- 무대 설정
- 지형 툴킷 핵심 요약
- 깨어남
- 레벨 테스트
- 메인 메뉴 제작
- 게임 마스터 제작
- 요약
- 3장. 캐릭터 디자인
- 기본 캐릭터 클래스 속성
- 캐릭터 상태
- 캐릭터 모델
- 모델 준비
- 캐릭터 모션
- 애니메이션 컨트롤러
- 캐릭터 컨트롤러
- 역운동학
- 요약
- 4장. 플레이어 캐릭터와 비플레이어 캐릭터 디자인
- 플레이어 캐릭터 커스터마이징
- 부분 커스터마이징
- 되새김
- 비플레이어 캐릭터
- 비플레이어 캐릭터 기본
- NPC AI
- PC와 NPC의 상호작용
- 요약
- 플레이어 캐릭터 커스터마이징
- 5장. 게임 마스터와 게임 메카닉
- 게임 마스터
- 게임 설정 및 오디오 관리
- 신 관리
- 게임 마스터 개선
- 레벨 컨트롤러
- 오디오 컨트롤러
- 플레이어 데이터 관리
- PC 클래스 강화
- 캐릭터 커스터마이징 클래스 업데이트
- UI 컨트롤러 변경
- 테스트
- 요약
- 게임 마스터
- 6장. 인벤토리 시스템
- 인벤토리 시스템
- 중량 인벤토리
- 아이템 종류 결정하기
- 인벤토리 아이템 제작
- 프리팹 제작
- 인벤토리 아이템 에이전트 추가
- 인벤토리 아이템 프리팹 정의
- 인벤토리 인터페이스
- 인벤토리 UI 프레임워크 제작
- 동적 아이템 뷰어 설계
- 최종 인벤토리 아이템 UI 제작
- UI와 실제 인벤토리 시스템 통합
- 카테고리 버튼과 데이터 표시 후킹하기
- 인벤토리 시스템 테스트
- 인벤토리 아이템과 플레이어 캐릭터
- 인벤토리 아이템 적용
- 살펴보기
- 요약
- 인벤토리 시스템
- 7장. 사용자 인터페이스와 시스템 피드백
- HUD 설계
- HUD의 기본 정보
- 설계
- HUD 프레임워크
- HUD 설계 마무리
- 캐릭터 정보 패널
- 활성 인벤토리 아이템 패널
- 특수 아이템 패널
- 코드 통합
- HUD내 적의 상태 정보
- NPC 상태 정보 사용자 인터페이스
- NPC 캔버스 제작
- NPC 생명력
- 코드 향상시키기
- 요약
- HUD 설계
- 8장. 멀티플레이어 설정
- 멀티플레이어 게임 제작의 어려움
- 초기 멀티 플레이어 게임
- 기본 네트워크 구성
- 네트워크 프로젝트
- 적 탱크 추가
- 빌드 및 테스트
- RPG 캐릭터 지원 네트워크
- RPG 신 제작
- 네트워크 지원 플레이어 캐릭터
- 네트워크 지원 NPC
- 플레이어 커스터마이징과 아이템 동기화
- NPC와 다른 아이템 스폰
- 네트워크 지원 PC와 NPC 테스트
- 향후 계획
- 요약