이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제
유니티로 배우는 게임 디자인 패턴
소프트웨어 디자인 패턴과 모범 사례로 익히는 실용적 게임 개발법 제2판
베스트
IT 모바일 top100 5주
가격
24,000
10 21,600
YES포인트?
1,200원 (5%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요

이미 소장하고 있다면 판매해 보세요.

  •  국내배송만 가능
  •  최저가 보상
  •  문화비소득공제 신청가능

이 상품의 태그

카드뉴스로 보는 책

카드뉴스0
카드뉴스1
카드뉴스2
카드뉴스3
카드뉴스4
카드뉴스5

상세 이미지

책소개

목차

지은이·옮긴이 소개 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

저자 소개2

데이비드 바론

관심작가 알림신청

David Baron

업계에서 15년 이상 일한 게임 개발자다. AAA 스튜디오와 캐나다 몬트리올의 모바일, 인디 게임 스튜디오에서 일했으며, 프로그래밍과 디자인, 3D 아트 모두에 능하다. 가상현실, 모바일, 콘솔 등 다양한 플랫폼에서 게임을 만들어왔다.
게임과 앱, 프로그래밍에 관심이 있어 다양한 자료를 번역하면서 새로운 것을 배워가고 있다. 좀 더 좋은 자료를 더 좋은 번역으로 제공하고 싶은 마음에서 최선을 다하고 있다. 이름을 검색했을 때 인터넷 서점 한 페이지가 작업한 책으로 가득 찰 때까지 열심히 번역하는 것이 목표다. 옮긴 책으로 『레이 트레이싱』, 『유니티 셰이더와 이펙트 제작 3/e』, 『함수형 코틀린』, 『예제로 배우는 언리얼 엔진 4 게임 개발』(이상 에이콘출판사) 등이 있다.

구진수의 다른 상품

품목정보

발행일
2022년 10월 31일
쪽수, 무게, 크기
216쪽 | 188*245*20mm
ISBN13
9791192469508

책 속으로

코드를 입력하기 전에 게임 개발 과정에서 중요한 단계를 먼저 밟아야 한다. 바로 게임 기획서 작성이다. 게임 기획서는 전체 프로젝트의 청사진이다. 게임 기획서의 주요 목적은 게임의 핵심 개념에 대한 전반적인 시각을 문서로 작성해 긴 개발 과정 동안 여러 분야의 개발자 팀을 안내하는 것이다.
--- p.7

예를 들어 싱글턴 패턴으로 개별 매니저 클래스에서 게임의 모든 핵심 시스템을 래핑하고 관리하는 간단한 코드 아키텍처를 빠르게 만들 수 있다. 또한 매니저가 게임 내부의 복잡성을 숨기는 깔끔하고 직관적인 인터페이스를 노출하도록 하거나 매니저에 쉽게 접근하고 한 번에 하나의 인스턴스만 있도록 구현할 수도 있다. 굉장히 그럴듯하게 들리는 접근 방식이다. 그러나 싱글턴은 핵심 구성 요소 간의 결합을 강력하게 하여 유닛 테스트를 매우 어렵게 만든다.
--- p.29

이벤트 버스 패턴은 메시징 시스템과 발행/구독 패턴과 가까운 관계이다. 발행/구독 시스템이라고 부르는 것이 이벤트 버스가 하는 일을 봤을 때 더 정확한 명칭이다. 이벤트 버스 패턴의 키워드는 버스다. 컴퓨터 용어인 버스는 구성 요소 간 연결을 의미한다. 6장에서는 이벤트 게시자 혹은 수신자가 될 수 있는 오브젝트가 구성 요소다.
--- p.54

옵저버 패턴은 한 객체가 주체 역할을 하고 다른 객체가 관찰자 역할을 맡는 객체 간의 일대다 관계를 설정하는 것이 핵심 목적이다. 주체 역할을 맡는 객체는 내부에서 변경되었을 때 관찰자에게 알리는 책임을 진다. 이는 객체가 특정 이벤트 알림을 구독하고 수신하는 게시자와 구독자의 관계와 유사하다. 핵심 차이점은 옵저버 패턴에서는 주체와 관찰자가 서로를 알고 있어 가볍게 결합된다는 점이다.
--- p.96

주의해야 할 점은 퍼사드 패턴과 어댑터가 종종 헷갈릴 수 있다는 점이다. 주요 차이점은 퍼사드 패턴은 단순화된 전면 인터페이스를 복잡한 시스템으로 설정한다는 점이다. 어댑터 패턴은 클라이언트에 일관적인 인터페이스를 유지하면서 호환되지 않는 시스템을 조정한다. 어댑터 패턴과 퍼사드 패턴 모두 구조적 패턴이지만 완전히 다른 목적을 가지고 있어 관련이 있다.

--- p.167

출판사 리뷰

디자인 패턴을 사용해 게임 개발의 넥스트 레벨로

유니티 게임 개발을 위한 입문서는 읽었는데, 어떻게 만들어야 잘 만드는 건지 모르시겠나요? 남들보다 우아한 방법으로 게임을 개발하고 싶으신가요? 그렇다면 여기, 유니티 디자인 패턴 가이드가 있습니다.

디자인 패턴은 일반적인 소프트웨어 개발 문제를 해결하는 데 재사용할 수 있는 방식입니다. 이 책의 저자는 유니티에도 디자인 패턴을 적용해 게임을 효율적으로 개발하는 방식을 찾고자 합니다. 성능에 민감한 레이싱 게임을 예제로 삼아 각 장에서 반복하여 게임 프로그래밍 문제를 제시하고, 이를 유니티 API에 적합한 디자인 패턴을 사용하여 해결합니다.

게임 프로토타입 기획서, 기본적인 C#과 유니티 개념은 1장~3장에서 설명합니다. 4장~13장에서는 게임 개발에 핵심적인 패턴을 소개합니다. 4장은 싱글턴 패턴, 5장은 상태 패턴, 6장은 이벤트 버스 패턴, 7장은 커맨드 패턴, 8장은 오브젝트 풀 패턴, 9장은 옵저버 패턴, 10장은 방문자 패턴, 11장은 전략 패턴, 12장은 데커레이터 패턴, 13장은 공간 분할 패턴을 다룹니다. 14장~16장에서는 복잡한 서브시스템을 대체할 대체 패턴으로 각각 어댑터 패턴, 퍼사드 패턴, 서비스 로케이터 패턴을 설명합니다.

레이싱 게임을 예시로 13가지 패턴을 적용해 따라가다 보면, 자신의 게임에 어떤 디자인 패턴을 사용해야 할지 감을 잡을 수 있을 것입니다. 초심자 딱지를 떼고 넥스트 레벨로 나아가고 싶은 게임 개발자에게 이 책을 추천합니다.

주요 내용
■ 업계 표준 개발 패턴을 사용해 전문적인 유니티 코드 설계
■ 특정 게임 메커니즘 또는 기능 구현을 위한 올바른 패턴 찾기
■ 코드 한 줄 작성하지 않고도 수정할 수 있는 핵심 게임 메커니즘 및 구성 요소
■ 실제 객체 지향 프로그래밍(OOP) 기법 및 유니티 프로젝트에서의 사용법
■ 레벨 에디터 등 고유한 게임 개발 시스템 구축
■ 유니티 API와 함께 사용할 수 있는 기존 디자인 패턴 적용법

리뷰/한줄평6

리뷰

10.0 리뷰 총점

한줄평

9.3 한줄평 총점
21,600
1 21,600