유니티로 배우는 게임 디자인 패턴(2판)
소프트웨어 디자인 패턴과 모범 사례로 익히는 실용적 게임 개발법
Regular price
$26.97
Sale price
Regular price
✈️
Estimated delivery date 예상 배송일
Standard Shipping
불러오는 중...
주문일로부터 8-12 영업일
Express Shipping
불러오는 중...
주문일로부터 6-8 영업일
우아하게 게임을 개발하고 싶다면 디자인 패턴을 배우자
이 책은 유니티의 고급 프로그래밍 기술과 디자인 패턴으로 작업을 시작할 준비가 된 모든 게임 개발자를 위해 쓰였다. 소프트웨어 디자인 패턴의 핵심 원칙을 익히고 그 구성 요소를 효율적으로 구축하는 법을 소개한다. 2판에서는 실용적인 예시를 통해 디자인 패턴을 다루고, 게임 기획서(GDD)와 유니티 프로그래밍 설명이 추가되었다. 이 책을 다 읽으면 유니티에 디자인 패턴을 적용해 체계적이고 확장 가능하며 최적화된 프로세스를 활용할 수 있을 것이다.
이 책은 유니티의 고급 프로그래밍 기술과 디자인 패턴으로 작업을 시작할 준비가 된 모든 게임 개발자를 위해 쓰였다. 소프트웨어 디자인 패턴의 핵심 원칙을 익히고 그 구성 요소를 효율적으로 구축하는 법을 소개한다. 2판에서는 실용적인 예시를 통해 디자인 패턴을 다루고, 게임 기획서(GDD)와 유니티 프로그래밍 설명이 추가되었다. 이 책을 다 읽으면 유니티에 디자인 패턴을 적용해 체계적이고 확장 가능하며 최적화된 프로세스를 활용할 수 있을 것이다.
Couldn't load pickup availability
출판사 리뷰
출판사 리뷰
디자인 패턴을 사용해 게임 개발의 넥스트 레벨로
유니티 게임 개발을 위한 입문서는 읽었는데, 어떻게 만들어야 잘 만드는 건지 모르시겠나요? 남들보다 우아한 방법으로 게임을 개발하고 싶으신가요? 그렇다면 여기, 유니티 디자인 패턴 가이드가 있습니다.
디자인 패턴은 일반적인 소프트웨어 개발 문제를 해결하는 데 재사용할 수 있는 방식입니다. 이 책의 저자는 유니티에도 디자인 패턴을 적용해 게임을 효율적으로 개발하는 방식을 찾고자 합니다. 성능에 민감한 레이싱 게임을 예제로 삼아 각 장에서 반복하여 게임 프로그래밍 문제를 제시하고, 이를 유니티 API에 적합한 디자인 패턴을 사용하여 해결합니다.
게임 프로토타입 기획서, 기본적인 C#과 유니티 개념은 1장~3장에서 설명합니다. 4장~13장에서는 게임 개발에 핵심적인 패턴을 소개합니다. 4장은 싱글턴 패턴, 5장은 상태 패턴, 6장은 이벤트 버스 패턴, 7장은 커맨드 패턴, 8장은 오브젝트 풀 패턴, 9장은 옵저버 패턴, 10장은 방문자 패턴, 11장은 전략 패턴, 12장은 데커레이터 패턴, 13장은 공간 분할 패턴을 다룹니다. 14장~16장에서는 복잡한 서브시스템을 대체할 대체 패턴으로 각각 어댑터 패턴, 퍼사드 패턴, 서비스 로케이터 패턴을 설명합니다.
레이싱 게임을 예시로 13가지 패턴을 적용해 따라가다 보면, 자신의 게임에 어떤 디자인 패턴을 사용해야 할지 감을 잡을 수 있을 것입니다. 초심자 딱지를 떼고 넥스트 레벨로 나아가고 싶은 게임 개발자에게 이 책을 추천합니다.
주요 내용
■ 업계 표준 개발 패턴을 사용해 전문적인 유니티 코드 설계
■ 특정 게임 메커니즘 또는 기능 구현을 위한 올바른 패턴 찾기
■ 코드 한 줄 작성하지 않고도 수정할 수 있는 핵심 게임 메커니즘 및 구성 요소
■ 실제 객체 지향 프로그래밍(OOP) 기법 및 유니티 프로젝트에서의 사용법
■ 레벨 에디터 등 고유한 게임 개발 시스템 구축
■ 유니티 API와 함께 사용할 수 있는 기존 디자인 패턴 적용법
유니티 게임 개발을 위한 입문서는 읽었는데, 어떻게 만들어야 잘 만드는 건지 모르시겠나요? 남들보다 우아한 방법으로 게임을 개발하고 싶으신가요? 그렇다면 여기, 유니티 디자인 패턴 가이드가 있습니다.
디자인 패턴은 일반적인 소프트웨어 개발 문제를 해결하는 데 재사용할 수 있는 방식입니다. 이 책의 저자는 유니티에도 디자인 패턴을 적용해 게임을 효율적으로 개발하는 방식을 찾고자 합니다. 성능에 민감한 레이싱 게임을 예제로 삼아 각 장에서 반복하여 게임 프로그래밍 문제를 제시하고, 이를 유니티 API에 적합한 디자인 패턴을 사용하여 해결합니다.
게임 프로토타입 기획서, 기본적인 C#과 유니티 개념은 1장~3장에서 설명합니다. 4장~13장에서는 게임 개발에 핵심적인 패턴을 소개합니다. 4장은 싱글턴 패턴, 5장은 상태 패턴, 6장은 이벤트 버스 패턴, 7장은 커맨드 패턴, 8장은 오브젝트 풀 패턴, 9장은 옵저버 패턴, 10장은 방문자 패턴, 11장은 전략 패턴, 12장은 데커레이터 패턴, 13장은 공간 분할 패턴을 다룹니다. 14장~16장에서는 복잡한 서브시스템을 대체할 대체 패턴으로 각각 어댑터 패턴, 퍼사드 패턴, 서비스 로케이터 패턴을 설명합니다.
레이싱 게임을 예시로 13가지 패턴을 적용해 따라가다 보면, 자신의 게임에 어떤 디자인 패턴을 사용해야 할지 감을 잡을 수 있을 것입니다. 초심자 딱지를 떼고 넥스트 레벨로 나아가고 싶은 게임 개발자에게 이 책을 추천합니다.
주요 내용
■ 업계 표준 개발 패턴을 사용해 전문적인 유니티 코드 설계
■ 특정 게임 메커니즘 또는 기능 구현을 위한 올바른 패턴 찾기
■ 코드 한 줄 작성하지 않고도 수정할 수 있는 핵심 게임 메커니즘 및 구성 요소
■ 실제 객체 지향 프로그래밍(OOP) 기법 및 유니티 프로젝트에서의 사용법
■ 레벨 에디터 등 고유한 게임 개발 시스템 구축
■ 유니티 API와 함께 사용할 수 있는 기존 디자인 패턴 적용법
목차
목차
지은이·옮긴이 소개 xi
기술 감수자 소개 xii
옮긴이 머리말 xiii
베타리더 후기 xiv
감사의 글 xvi
이 책에 대하여 xvii
PART 1 | 기초
CHAPTER 1 | 시작하기 전에 3
1.1 2판의 참고 사항 3
1.2 책의 철학 4
1.3 디자인 패턴이란 무엇인가? 4
1.4 이 책에서 다루지 않는 주제는? 5
1.5 게임 프로젝트 5
1.6 정리 6
CHAPTER 2 | 게임 기획서 7
2.1 기획서 8
2.2 정리 18
2.3 읽을거리 18
CHAPTER 3 | 유니티 프로그래밍 간략 설명 19
3.1 이미 알고 있어야 하는 것 19
3.2 C# 기능 20
3.3 유니티 엔진 기능 24
3.4 정리 26
3.5 읽을거리 26
PART 2 | 핵심 패턴
CHAPTER 4 | 싱글턴으로 게임 매니저 구현하기 29
4.1 기술적 요구 사항 30
4.2 싱글턴 패턴 이해하기 30
4.3 게임 매니저 디자인하기 31
4.4 게임 매니저 구현하기 32
4.5 정리 38
CHAPTER 5 | 상태 패턴으로 캐릭터 상태 관리하기 39
5.1 기술적 요구 사항 39
5.2 상태 패턴의 개요 40
5.3 캐릭터 상태 정의하기 41
5.4 상태 패턴 구현하기 42
5.5 상태 패턴의 장단점 49
5.6 대안 살펴보기 50
5.7 정리 51
CHAPTER 6 | 이벤트 버스로 게임 이벤트 관리하기 53
6.1 기술적 요구 사항 54
6.2 이벤트 버스 패턴 이해하기 54
6.3 레이스 이벤트 버스 구현하기 58
6.4 대안 살펴보기 65
6.5 정리 65
CHAPTER 7 | 커맨드 패턴으로 리플레이 시스템 구현하기 67
7.1 기술적 요구 사항 68
7.2 커맨드 패턴 이해하기 68
7.3 리플레이 시스템 설계하기 71
7.4 리플레이 시스템 구현하기 72
7.5 대안 살펴보기 81
7.6 정리 81
CHAPTER 8 | 오브젝트 풀 패턴으로 최적화하기 83
8.1 기술적 요구 사항 84
8.2 오브젝트 풀 패턴 이해하기 84
8.3 오브젝트 풀 패턴 구현하기 86
8.4 대안 살펴보기 93
8.5 정리 93
CHAPTER 9 | 옵저버 패턴으로 컴포넌트 분리하기 95
9.1 기술적 요구 사항 95
9.2 옵저버 패턴 이해하기 96
9.3 옵저버 패턴으로 핵심 컴포넌트 분리하기 98
9.4 옵저버 패턴 구현하기 99
9.5 대안 살펴보기 106
9.6 정리 106
CHAPTER 10 | 방문자 패턴으로 파워업 구현하기 107
10.1 기술적 요구 사항 108
10.2 방문자 패턴 이해하기 108
10.3 파워업 메커니즘 설계하기 110
10.4 파워업 메커니즘 구현하기 111
10.5 정리 119
CHAPTER 11 | 전략 패턴으로 드론 구현하기 121
11.1 기술적 요구 사항 122
11.2 전략 패턴 이해하기 122
11.3 적 드론 디자인하기 124
11.4 적 드론 구현하기 126
11.5 대안 살펴보기 132
11.6 정리 133
CHAPTER 12 | 데커레이터를 사용하여 무기 시스템 구현하기 135
12.1 기술적 요구 사항 135
12.2 데커레이터 패턴 이해하기 136
12.3 무기 시스템 디자인하기 138
12.4 무기 시스템 구현하기 139
12.5 대안 살펴보기 149
12.6 정리 149
CHAPTER 13 | 공간 분할로 레벨 에디터 구현하기 151
13.1 기술적 요구 사항 152
13.2 공간 분할 패턴 이해하기 152
13.3 레벨 에디터 디자인하기 154
13.4 레벨 에디터 구현하기 156
13.5 대안 살펴보기 161
13.6 정리 162
PART 3 | 대체 패턴
CHAPTER 14 | 어댑터로 시스템 조정하기 165
14.1 기술적 요구 사항 165
14.2 어댑터 패턴 이해하기 166
14.3 어댑터 패턴 구현하기 169
14.4 정리 173
CHAPTER 15 | 퍼사드 패턴으로 복잡성 숨기기 175
15.1 기술적 요구 사항 176
15.2 퍼사드 패턴 이해하기 176
15.3 오토바이 엔진 디자인하기 178
15.4 오토바이 엔진 구현하기 178
15.5 대안 살펴보기 184
15.6 정리 184
CHAPTER 16 | 서비스 로케이터 패턴으로 종속성 관리하기 185
16.1 기술적 요구 사항 185
16.2 서비스 로케이터 패턴 이해하기 186
16.3 서비스 로케이터 패턴 구현하기 188
16.4 대안 살펴보기 193
16.5 정리 193
찾아보기 195
기술 감수자 소개 xii
옮긴이 머리말 xiii
베타리더 후기 xiv
감사의 글 xvi
이 책에 대하여 xvii
PART 1 | 기초
CHAPTER 1 | 시작하기 전에 3
1.1 2판의 참고 사항 3
1.2 책의 철학 4
1.3 디자인 패턴이란 무엇인가? 4
1.4 이 책에서 다루지 않는 주제는? 5
1.5 게임 프로젝트 5
1.6 정리 6
CHAPTER 2 | 게임 기획서 7
2.1 기획서 8
2.2 정리 18
2.3 읽을거리 18
CHAPTER 3 | 유니티 프로그래밍 간략 설명 19
3.1 이미 알고 있어야 하는 것 19
3.2 C# 기능 20
3.3 유니티 엔진 기능 24
3.4 정리 26
3.5 읽을거리 26
PART 2 | 핵심 패턴
CHAPTER 4 | 싱글턴으로 게임 매니저 구현하기 29
4.1 기술적 요구 사항 30
4.2 싱글턴 패턴 이해하기 30
4.3 게임 매니저 디자인하기 31
4.4 게임 매니저 구현하기 32
4.5 정리 38
CHAPTER 5 | 상태 패턴으로 캐릭터 상태 관리하기 39
5.1 기술적 요구 사항 39
5.2 상태 패턴의 개요 40
5.3 캐릭터 상태 정의하기 41
5.4 상태 패턴 구현하기 42
5.5 상태 패턴의 장단점 49
5.6 대안 살펴보기 50
5.7 정리 51
CHAPTER 6 | 이벤트 버스로 게임 이벤트 관리하기 53
6.1 기술적 요구 사항 54
6.2 이벤트 버스 패턴 이해하기 54
6.3 레이스 이벤트 버스 구현하기 58
6.4 대안 살펴보기 65
6.5 정리 65
CHAPTER 7 | 커맨드 패턴으로 리플레이 시스템 구현하기 67
7.1 기술적 요구 사항 68
7.2 커맨드 패턴 이해하기 68
7.3 리플레이 시스템 설계하기 71
7.4 리플레이 시스템 구현하기 72
7.5 대안 살펴보기 81
7.6 정리 81
CHAPTER 8 | 오브젝트 풀 패턴으로 최적화하기 83
8.1 기술적 요구 사항 84
8.2 오브젝트 풀 패턴 이해하기 84
8.3 오브젝트 풀 패턴 구현하기 86
8.4 대안 살펴보기 93
8.5 정리 93
CHAPTER 9 | 옵저버 패턴으로 컴포넌트 분리하기 95
9.1 기술적 요구 사항 95
9.2 옵저버 패턴 이해하기 96
9.3 옵저버 패턴으로 핵심 컴포넌트 분리하기 98
9.4 옵저버 패턴 구현하기 99
9.5 대안 살펴보기 106
9.6 정리 106
CHAPTER 10 | 방문자 패턴으로 파워업 구현하기 107
10.1 기술적 요구 사항 108
10.2 방문자 패턴 이해하기 108
10.3 파워업 메커니즘 설계하기 110
10.4 파워업 메커니즘 구현하기 111
10.5 정리 119
CHAPTER 11 | 전략 패턴으로 드론 구현하기 121
11.1 기술적 요구 사항 122
11.2 전략 패턴 이해하기 122
11.3 적 드론 디자인하기 124
11.4 적 드론 구현하기 126
11.5 대안 살펴보기 132
11.6 정리 133
CHAPTER 12 | 데커레이터를 사용하여 무기 시스템 구현하기 135
12.1 기술적 요구 사항 135
12.2 데커레이터 패턴 이해하기 136
12.3 무기 시스템 디자인하기 138
12.4 무기 시스템 구현하기 139
12.5 대안 살펴보기 149
12.6 정리 149
CHAPTER 13 | 공간 분할로 레벨 에디터 구현하기 151
13.1 기술적 요구 사항 152
13.2 공간 분할 패턴 이해하기 152
13.3 레벨 에디터 디자인하기 154
13.4 레벨 에디터 구현하기 156
13.5 대안 살펴보기 161
13.6 정리 162
PART 3 | 대체 패턴
CHAPTER 14 | 어댑터로 시스템 조정하기 165
14.1 기술적 요구 사항 165
14.2 어댑터 패턴 이해하기 166
14.3 어댑터 패턴 구현하기 169
14.4 정리 173
CHAPTER 15 | 퍼사드 패턴으로 복잡성 숨기기 175
15.1 기술적 요구 사항 176
15.2 퍼사드 패턴 이해하기 176
15.3 오토바이 엔진 디자인하기 178
15.4 오토바이 엔진 구현하기 178
15.5 대안 살펴보기 184
15.6 정리 184
CHAPTER 16 | 서비스 로케이터 패턴으로 종속성 관리하기 185
16.1 기술적 요구 사항 185
16.2 서비스 로케이터 패턴 이해하기 186
16.3 서비스 로케이터 패턴 구현하기 188
16.4 대안 살펴보기 193
16.5 정리 193
찾아보기 195
저자
저자
데이비드 바론
David Baron
업계에서 15년 이상 일한 게임 개발자다. AAA 스튜디오와 캐나다 몬트리올의 모바일, 인디 게임 스튜디오에서 일했으며, 프로그래밍과 디자인, 3D 아트 모두에 능하다. 가상현실, 모바일, 콘솔 등 다양한 플랫폼에서 게임을 만들어왔다.
업계에서 15년 이상 일한 게임 개발자다. AAA 스튜디오와 캐나다 몬트리올의 모바일, 인디 게임 스튜디오에서 일했으며, 프로그래밍과 디자인, 3D 아트 모두에 능하다. 가상현실, 모바일, 콘솔 등 다양한 플랫폼에서 게임을 만들어왔다.
Payment & Security
Payment methods
Your payment information is processed securely. We do not store credit card details nor have access to your credit card information.
$99 이상 무료 배송
3% 리워드 크레딧 적립
Secure Payment

