Top

Unity 3 Blueprint 한국어판 [4가지 실전 게임으로 배우는 유니티 프로그래밍]

  • 원서명Unity 3 Blueprints - A Practical Guide to Indie Games Development (ISBN 9780956888709)
  • 지은이크레이그 스티븐슨, 사이먼 퀴그
  • 옮긴이조형재
  • ISBN : 9788960772489
  • 25,000원
  • 2011년 11월 30일 펴냄 (절판)
  • 페이퍼백 | 280쪽 | 188*235mm
  • 시리즈 : 게임 개발 프로그래밍

판매처

  • 현재 이 도서는 구매할 수 없습니다.

책 소개



초급에서 중급까지의 개발자를 위한 실전 예제 중심의 유니티 개발서다. 이 책에서 독자는 현재도 끊임 없이 재해석되고 있는 네 개의 고전 게임을 실제로 제작하게 된다. 이 과정에서 모든 게임에 폭넓게 응용될 수 있는 게임의 기본 메카닉들을 상세한 설명과 함께 구현하고, 구체적인 사례를 통해 유니티의 핵심 기능을 익히게 된다. 특히 게임 개발에 필요한 아트 애셋과 단계별 프로젝트 파일이 충실히 제공되기 때문에 독자는 스크립팅을 통한 게임 메카닉 구현과 유니티의 다양한 기능을 학습하는 데 주력할 수 있다.


[ 소개 ]

유니티는 전세계의 전문 개발자, 독립 개발자, 아마추어 개발자 모두가 널리 사용하는 게임 개발 도구다. 이 책은 유니티를 이용해 4가지 유명 게임을 만드는 과정을 설명한다. 이를 통해 독자는 유니티를 사용한 게임 개발의 핵심에 접근하게 된다.

- 카드 짝 맞추기 게임
- 슈팅 게임
- 타워 디펜스 게임
- 물리 기반 구슬 게임



모든 코드와 수준 높은 아트 애셋을 딥 픽셀 사이트에서 내려 받아 활용함으로써, 독자는 손쉽게 게임 개발을 경험하고, 나아가 자신만의 게임을 만들어 볼 수 있다.

이 책은 성공적인 게임 개발을 꿈꾸는 독립 개발자와 아티스트를 위한 안내서로서, 유니티나 게임 개발에 대한 지식이 없는 사람도 누구나 이 책으로 시작할 수 있다. 그러나 개발 환경에 어느 정도 익숙하고 스크립팅에 대한 기초 지식이 있다면 더욱 좋을 것이다.(스크립팅에 대한 기초적인 내용도 책에 정리해뒀다.)


[ 이 책에서 다루는 내용 ]

■ 4가지 고전 게임을 재현하면서 유니티를 이용한 게임 개발의 핵심 테크닉
■ 초시계, 게임 루프, 점수 시스템 등 게임의 핵심기반인 고전 메카닉 구현
■ 키보드 입력, 스크립트 기반의 레벨 제작, 웨이포인트 기반의 패스 파인딩 설명
■ 충돌 감지 기능의 구현과 응용
■ 사운드와 파티클 시스템을 이용한 게임 경험 강화
■ 유니티의 앞선 3D 기능을 활용한 수준 높은 게임 레벨 제작
■ 실제 개발에 활용할 수 있는 노하우와 팁


[ 이 책의 구성 ]

이 책의 목적은 따라하기 쉬운 튜토리얼 스타일로 네 가지 유명 실전 게임의 청사진을 설명하는 것이다. 고전 게임 개발에서 주류를 이루는 여러 게임 컨셉과 메카닉을 소개할 것이다. 그리고 그 청사진을 토대로 창의와 실험을 통해 자신만의 게임을 만들도록 유도할 것이다. 기본적으로 게임 개발에 필요한 모든 자료와 애셋을 제공할 것이다. 그러나 그것을 스스로 바꿔보거나, 가능하다면 개인적 취향을 반영하기 위해 자신만의 애셋을 직접 만들어보기를 추천한다. 딥 픽셀 웹사이트(deeppixel.com)에서는 각 게임의 (1)부에 해당하는 프로젝트 파일을 제공한다. 게임을 작동시키는 데 문제가 있는 독자들을 위한 배려다. 이 파일을 통해 잘못된 부분을 발견하고 해결해서 다음 장으로 넘어갈 수 있다.

각 장에서 다루게 될 내용은 다음과 같다.

1장. 개발 환경 구축
엔진에 시동을 거는 장이라고 할 수 있다. 1장에서는 유니티 개발 환경 구축에 필요한 단계를 살펴본다. 에디터 레이아웃을 간단히 설명한 후에, 유니티를 이용한 게임 개발의 기반이 되는 원리와 개념을 주로 설명할 것이다.

2장. 카드 짝 맞추기 게임 (1)
2장과 3장에서 다루는 카드 짝 맞추기 게임을 통해 유니티에서의 게임 개발 테크닉과 실제 사용에 대한 기초를 닦는다. 게임 루프의 개념과 앞으로 만들 게임에서 게임 루프가 차지하는 중요성에 대해 살펴본다.

3장. 카드 짝 맞추기 게임 (2)
카드 짝 맞추기 게임의 기본 골격을 완성한 상태에서, 게임을 구성하는 그 밖의 필수 요소 구현을 살펴 본다. 점수 시스템은 게임 플레이에서 플레이어의 진행 상황을 보여준다. 한편 카운트다운 시계는 정해진 시간 동안 가능한 한 많은 짝을 찾아야 하는 게임에 흥미를 더해주는 또 다른 요소로 활용될 것이다. 마지막으로 유니티 파티클 시스템을 이용해 게임을 다듬어 본다.

4장. 슈팅 게임 (1)
비단 인디 게임만이 아니라 주류 게임 시장에서도 고전이라고 할 수 있는 톱다운(top down) 방식 슈팅 게임을 만들게 된다. 이 과정에서 시차 스크롤링(Parallax Scrolling)이라는 2D 게임의 기본 테크닉을 살펴볼 것이다. 이 테크닉은 게임 환경에 깊이감을 더해준다.

5장. 슈팅 게임 (2)
5장에서는 다양한 요소를 추가해 톱다운 슈팅 게임을 확장해 본다. 두 종류의 적 유형을 만들고, 그들이 화면을 가로질러 움직이며 플레이어를 공격하게 할 것이다. 또한 점수 시스템의 구현에 대해서도 살펴본다.

6장. 타워 디펜스 게임 (1)
지난 몇 년간 픽셀 정크(Pixel Junk)의 픽셀 몬스터즈(Pixel Monsters) 같은 독특하고 창의적인 버전의 게임이 계속해서 출현하면서, 타워 디펜스는 인디 게임에서 빼놓을 수 없는 게임 유형으로 자리 잡았다. 6장에서는 이러한 타워 디펜스 게임을 구성하는 요소를 살펴본다. 마우스를 이용한 상호작용, 스크립트를 통한 레벨 생성, 웨이포인트(waypoint)를 이용한 길 찾기(Path finding)를 설명할 것이다.

7장. 타워 디펜스 게임 (2)
타워 디펜스 게임을 만들어가면서 게임을 더욱 재미있게 만드는 메카닉 구현을 살펴볼 것이다. 여기에는 적을 따라서 회전하는 터렛(turret) 컨트롤과 적이 터렛에 의해 피격됐는지를 판정하는 충돌 처리가 포함된다. 또한 파티클 이펙트를 이용해 게임을 꾸미는 방법에 대해서도 살펴볼 것이다.

8장. 물리 기반 구슬 게임 (1)
마지막 게임인 물리 기반 게임 마블 매드니스는 본격적인 3D 게임이라고 할 수 있다. 이 게임에서는 작은 구슬을 조종해서 장애물과 함정이 있는 위태로운 레벨을 지나가게 된다. 8장에서는 유니티에 있는 다양한 3D 관련 기능을 활용할 것이다. 특히 카메라 컨트롤과 3D 월드에서의 움직임에 관해서 설명할 것이다. 그리고 유니티에 들어 있는 3D 모델을 이용해서 간단한 3D 레벨을 제작해 본다.

9장. 물리 기반 구슬 게임 (2)
게임을 더욱 확장하기 위해, 유니티 물리 재질(physics material)을 이용해 만들 수 있는 게임 메카닉에 대해 살펴볼 것이다. 물리 재질을 이용해 게임상의 3D 모델이 물리적 속성에 따라서 서로 다르게 행동하도록 만들 수 있다.

10장. 창의성을 위한 참고자료
앞에서 만든 게임을 다음 단계로 발전시키기 위한 다양한 제안을 소개한다. 자신만의 창의성을 발휘하고, 그것을 게임에 반영할 수 있도록 안내할 것이다.

저자/역자 소개

[ 저자 서문 ]

유니티의 게임 개발 세계에 온 것을 환영한다. 유니티는 독립 개발자에게 멀티 플랫폼 개발을 가능하게 해준 혁신적인 3D 게임 엔진이다.

게임 업계에 속하지 않은 개발자에게 이렇게 다양한 플랫폼을, 아무런 제한 없이 접근하도록 도와준 게임 엔진은 전혀 없었다. 유니티는 “한 번 만들어, 다양하게 사용한다.”라는 기본 원칙 하에, 독립 개발자를 위한 게임 엔진이라는 틈새 시장을 개척했다. 웹, 아이폰, 아이패드, 위(Wii)는 물론이고 거기에 안드로이드, 엑스박스, 플레이스테이션에 이르는 다양한 플랫폼까지 지원함으로써, 게임 개발을 꿈꾸는 사람이라면 결코 놓칠 수 없는 선택이 됐다.

처음 개발을 시작하는 사람에게 게임 프로그래밍 언어를 배우기 위해 소요되는 많은 시간과 노력은 언제나 큰 장애물이었다. 업계 공식 언어라고 할 수 있는 C++는 언리얼(Unreal)부터 크라이엔진(CryEngine)에 이르는 많은 게임 엔진과 하복(Havok) 같은 물리 엔진에 사용된다. 이런 엔진들은 대부분 엄청난 라이선스 비용으로 인해 독립 개발자는 애초에 선택을 고려할 수도 없는 대상이다. 이런 값비싼 엔진의 사용과 대작 게임 개발을 위한 천문학적 비용은 스튜디오로 하여금 새로운 게임보다는 이전 게임의 속편에 안주하게 만들었다. 어느 플랫폼이건 정말로 재미있고 창의적인 게임은 이제 손꼽을 정도로 줄었다. 이것이 바로 독립 개발이 필요한 이유라고 할 수 있다.

독립 개발은 최근 몇 년 사이에 중흥기를 맞고 있다. 독립 개발은 늘 있어왔지만, 지금처럼 게임계 전반에서 영향력을 미치며, 성공을 거두고, 활발하게 움직인 적은 없었다. 유니티3와 플래쉬와 향상된 웹 기술의 등장으로 침실 코더(bedroom coder)들의 세계가 다시 한 번 자신감으로 충만해지고 있다. 독립 개발자인 조나단 플로우(Braid)와 카일 게블러(World of Goo)의 성공은 기본 개발 모델 밖에서도 상업적, 비평적 성공을 거둘 수 있는 게임이 가능하다는 사실을 입증했다. 이제 모든 독립 개발자가 일어나야 할 시점이다. 이 책은 그런 독립 개발자의 행렬에 합류하는 데 도움을 주기 위해 만들어졌다.

이 책은 네 가지 인기 있는 인디 게임의 개발 과정을 소개하고, 직접 그 게임을 커스터마이징하고 자신의 게임으로 만들기 위한 다양한 실험을 제공한다. 이런 실험 정신은 유니티는 물론이고 이 책에서도 가장 중요한 부분이라고 할 수 있다. 이 책에서는 게임 루프(game loop), 스크립팅, 물리, 인공지능, 파티클 효과 등 게임 개발의 기반이 되는 기본 개념과 원리를 살펴볼 것이다. 그리고 이 과정을 거치면서 자신만의 게임을 완성해 본다. 이 책을 통해 제 2의 카일 게블러(Kyle Gabler)가 탄생하기를 기대해 본다.


[ 저자 소개 ]

크레이그 스티븐슨 (Craig Stevenson)
크레이그는 독립 게임 개발사인 딥 픽셀(Deep Pixel)의 공동 창립자이자 매니징 디렉터다. 딥 픽셀은 주로 아이폰, 아이패드, 웹을 플랫폼으로, 작은 게임을 단기간 제작하는 개발사다. 원래 디자이너로 활동하다가 우연한 기회에 유니티를 알게 된 크레이그는 제1회 유나이트(Unite) 컨퍼런스에 참석한 후 유니티의 가능성에 완전히 매료된다. 첫 번째 게임으로 마케팅 회사를 위한 아이폰 게임을 만든 크레이그는 그때부터 스크립터이자 프로그래머로서 틈새 시장을 공략하기 시작했다.
틈틈이 짬을 내서 5:5 축구를 즐기는 크레이그는 게임의 기본 요소를 가지고 다양한 실험을 하는 것을 무엇보다 좋아한다.

사이먼 퀴그 (Simon Quig)
사이먼은 독립 게임 개발사인 딥 픽셀의 공동 창립자다. 에버테이 던디 대학에서 컴퓨터 아트를 전공한 후, 에딘버러에 있는 작은 게임 스튜디오의 수석 아티스트가 됐다. 그러나 그곳에서의 일은 오래 가지 않았다. 프리랜서로 잠시 활동했던 사이먼은 뉴캐슬로 옮겨 디지털 미디어 회사에서 아티스트로 일하며 게임에서 포스트 프로덕션에 이르기까지 다양한 분야를 경험하게 된다. 더 큰 창작의 자유를 추구하던 사이먼은 2010년 여름에 오랜 친구와 함께 딥 픽셀을 설립한다. 이제 둘은 수시로 서로를 귀찮게 만드는 존재가 됐다.


[ 옮긴이의 말 ]

유사한 게임이 넘쳐나는 현대 게임 시장에서 기존 게임과 다를 바 없는 평범한 게임이 성공할 가능성은 매우 희박하다. 기술적인 측면이건 내용적인 측면이건, 아니면 게임 경험이라는 좀 더 포괄적인 측면에서건, 게임은 이제 새로워야 살아남을 수 있다. 따라서 이러한 ‘새로움’을 만들기 위한 일련의 창의적 발상과 구현이 개발에서 중요한 위치를 차지하게 됐다. 유니티 같은 도구가 등장하고 각광받는 것도 창의성을 중시하는 이러한 맥락에서 이해할 수 있다. 그렇다면 게임, 특히 성공적인 게임을 만들기 위해서는 창의적인 새로움만 추구하면 되는 것일까?

지금까지 성공한 게임, 혹은 자신이 재미있게 즐겼던 게임을 되짚어 보자. 그저 새로움 자체만으로는 성공을 설명하기 어렵다는 사실을 알 수 있다. 오히려 성공한 게임들은 장르의 규범을 충실히 따르고 있어서 처음부터 매우 친숙하며, 완전히 새롭다기보다는 기존 게임의 문제점을 색다른 방식으로 해결한 경우에 가깝다고 할 수 있다.

기상천외한 새로운 게임을 마지막으로 본 것이 언제인지 생각해 보자. 퐁(Pong), 조크(Zork), 둠(Doom) 같은 게임이 출시되며 게임사를 새롭게 써내려간, 위대한 실험과 도전의 시대는 사실상 끝났다. 상업적 목적을 가진 게임에서 대중의 습관과 기대를 전복함으로써 성공하겠다는 전략은 대부분 대중의 외면을 받거나, 아예 기획 단계에서 폐기된다. 게임도 성숙 단계에 접어들었다고 할 수 있다. ‘새로움’에 앞서 ‘익숙함’이 먼저 충족돼야 하고, 성패는 둘 간의 조율을 얼마나 새롭고 창의적으로 하는가에 달려있다.

이 책은 유니티를 통해 게임에서의 익숙함을 만드는 방법을 설명한다. 여기서 만들게 될 네 가지 고전 게임은 꾸준한 재해석을 통해 수많은 게임에 사용된 게임 메카닉의 원형을 담고 있다. 그리고 각 메카닉을 구성하는 세부 시스템 역시 거의 모든 게임에 등장하는 게임의 필수 요소들이다. 독자는 이러한 메카닉과 시스템을 직접 구현함으로써 게임의 기본 문법을 이해하고, 동시에 실습을 통해 유니티라는 개발 도구의 활용법을 익히게 된다. 그리고 이를 통해 자신만의 게임을 기획하고 만들수 있는 토대를 마련하게 된다.

개발서로서는 훌륭한 수준의 아트 애셋, 단계별 프로젝트 파일 제공, 상세한 코드 해설이라는 장점을 가진 이 책은 스크립팅과 에디터 활용에서 초급을 지나 중급 단계로 발전하고 있는 유니티 개발자에게 큰 도움이 될 것으로 기대한다. 이 책의 번역이 독자 제현의 유니티 학습, 나아가 익숙함과 새로움 조화를 이룬 성공적인 게임 개발에 도움이 될 수 있기를 희망한다.


[ 옮긴이 소개 ]

조형재
서울대학교 미술대학에서 금속공예를 전공했고, 이후 3D 애니메이션 스튜디오를 거쳐 주로 게임 개발사에서 근무했다. 구체적인 약력은 개인 홈페이지(www.zorotoss.com)에서 확인할 수 있다. 2011년 현재, 한국과학기술원 문화기술대학원에서 게임 내러티브에 관한 연구로 석사 과정을 밟고 있으며, 경원대학교에서 유니티 엔진 강의를 맡고 있다. 에이콘 출판사의 『Unity 3D Game Development by Example 한국어판』 (2011)과 『유니티 3D 모바일 게임 아트』(2011)를 번역 출간했다.

목차

목차
  • 1장 개발 환경 구축
    • 기초
    • 애셋
    • 게임 오브젝트
    • 컴포넌트
    • 스크립트
    • 프리팹
    • 유니티 인터페이스
    • 씬 뷰와 계층 뷰
    • 프로젝트 뷰
    • 인스펙터
    • 게임 뷰
    • 자바스크립트 기초
    • 변수
    • 배열
    • 조건문
    • IF 선언문
    • For 루프
    • 함수
    • 유니티 스크립팅 레퍼런스
    • 프로젝트 파일
    • 정오표
    • 요약
    • 저자 소개
    • 감수자 소개
    • 옮긴이의 말
    • 옮긴이 소개
    • 들어가며
  • 2장 카드 짝 맞추기 게임 (1)
    • 게임 엔진
    • 개발 준비
    • 첫 프리팹
    • 첫 스크립트
    • 게임 루프
    • 스크립트 활성화
    • 첫 코드
    • 배열
    • 인스턴스 생성
    • Start() 함수
    • 라이트
    • 이집트 테마
    • FBX 임포터 세팅
    • 프리팹 메쉬 교체
    • 플레이어 상호작용
    • 타일 설정
    • 요약
  • 3장 카드 짝 맞추기 게임 (2)
    • 애니메이션 에디터
    • 애니메이션 클립
    • 애니메이션
    • 점수와 시계
    • 초시계
    • 씬 꾸미기
    • 파티클 시스템
    • 파티클 이미터
    • 파티클 애니메이터
    • 파티클 렌더러
    • 게임 씬
    • 마무리 작업
    • 결과 화면
    • 요약
  • 4장 슈팅 게임 (1)
    • 준비 작업
    • 게임 분석
    • 시차 스크롤링
    • Z 경합
    • 도시 배경
    • 초고속 우주선
    • 움직임
    • 무기 장착
    • 요약
  • 5장 슈팅 게임 (2)
    • 적 우주선
    • 공격 기능
    • 파괴 기능
    • 웨이브 생성
    • 웨이브
    • 게임 매니저
    • 웨이브
    • 웨이브 생성기
    • 피격
    • 재생성
    • GUI
    • 요약
  • 6장 타워 디펜스 게임 (1)
    • 준비 작업
    • 게임 분석
    • 레벨
    • 웨이포인트
    • 충돌과 트리거
    • 원주민
    • 이동
    • 카메라 마주보기
    • 정리
    • 행군
    • 요약
  • 7장 타워 디펜스 게임 (2)
    • 타워
    • 화살 타워
    • 화살 발사
    • 화살
    • 화염 토템
    • Ellipsoid Particle Emitter
    • Particle Animator
    • 체력 게이지
    • 피격
    • 죽음
    • 타워와 토템 배치
    • GUI
    • 정리
    • 파티클 효과
    • 요약
  • 8장 물리 기반 구슬 게임 (1)
    • 준비 작업
    • 게임 분석
    • 퍼즐 분석
    • 더미 레벨
    • 조작
    • 시소
    • 버튼
    • 퍼즐
    • 캐릭터
    • 카메라
    • 핑크 버튼
    • 이동 플랫폼
    • 시소
    • 승강기
    • 요약
  • 9장 물리 기반 구슬 게임 (2)
    • 퍼즐
    • 대포 장전
    • 대포 이동
    • 대포 회전
    • 대포 마무리
    • 시점 전환
    • 대포 발사
    • 물리 재질
    • 계단 플랫폼
    • 추락 플랫폼
    • 재회
    • 보완 작업
    • 요약
  • 10장 창의성을 위한 참고자료
    • 유니티 커뮤니티
    • 게임 공개
    • 미래
    • 성능
    • 구직
    • 딥 픽셀
    • 아티스트에게

도서 오류 신고

도서 오류 신고

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

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

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

정오표

[ p47 그림 수정 ]