Top

Unity 5.x By Example [단계별 과정을 통해 실제 게임 프로젝트 완성하기]

  • 원서명Unity 5.x By Example (ISBN: 9781785888380)
  • 지은이앨런 쏜(Alan Thorn)
  • 옮긴이최민석
  • ISBN : 9788960779075
  • 35,000원
  • 2016년 09월 29일 펴냄
  • 페이퍼백 | 416쪽 | 188*235mm
  • 시리즈 : acorn+PACKT, 게임 개발 프로그래밍

책 소개

요약

게임 디자인이나 프로그래밍에 대한 전문 지식이 없는 독자라도 흥미로운 게임 프로젝트를 직접 제작하면서 유니티의 기본적인 툴과 기능을 체득할 수 있다. 이 책에서는 제한 시간 내에 동전 모으기 게임, 2스틱을 이용한 슈팅 게임, 플랫폼 어드벤처 게임, 그리고 인공지능 적을 포함하는 3D 지형을 제작해보면서 유니티 5로 게임을 제작하기 위해 필요한 기초부터 중급 수준까지의 탄탄한 기반 기술을 습득하도록 도와준다.

이 책에서 다루는 내용

■ 게임 오브젝트, 컴포넌트, 씬과 같은 유니티의 핵심 개념
■ 몰임감 있고 흥미진진한 게임 레벨을 제작하는 레벨 디자인 기법
■ C# 스크립팅을 이용해 작동하는 게임 제작
■ 유니티의 툴셋을 창의적으로 활용한 다양한 테마와 스타일의 게임 제작
■ 플레이어 컨트롤과 입력 기능을 처리하는 방법
■ 지형과 월드 생성 툴을 이용하는 과정
■ 마야, 블렌더 등의 타사 툴에서 생성한 콘텐츠를 유니티로 임포트하기
■ 2D와 3D 게임을 개발하기 위한 기본 개념

이 책의 대상 독자

이 책은 유니티나 게임 개발에 대한 경험이 없지만 게임 개발을 취미나 직업으로 고려하는 독자에게 적합하다. 게임 개발과 연관되지는 않더라도 C, C++, C#, 자바, 자바스크립트, 액션스크립트, 파이썬 등의 객체지향 언어를 이용한 프로그래밍과 스크립팅에 대한 기본적인 지식은 갖췄다고 가정한다. 또한 게임 개발의 몇 가지 기본적인 개념도 이해하고 있어야 한다. 예를 들면, 3D 모델, 텍스처, 오디오 파일, 실행 파일이 무엇인지 정도는 알고 있어야 한다. 이러한 개념은 이 책의 본문을 이해하는 데 기반이 되는 개념으로서 필요한 경우 간략하게 다루지만 깊이 있게 설명하지는 않는다. 이 책에서는 게임을 제작하는 소프트웨어로 유니티를 사용한다. 각 장은 확장하고 실행할 수 있는 실제 게임을 제작하는 과정을 깊이 있게 다룬다.

이 책의 구성

1장, ‘동전 모으기 게임 1부’에서는 1인칭 동전 모으기 게임(Coin Collection Game)을 제작하는 과정을 소재로 유니티를 향한 여행을 시작한다. 유니티를 처음 접하지만 첫 번째 게임을 제작할 준비가 된 독자들이 따라올 수 있도록 내용을 구성했다.

2장, ‘프로젝트 A: 동전 모으기 게임 2부’에서는 1장에서 시작한 첫 번째 프로젝트를 완료한다. 따라서 먼저 1장을 완료했다고 가정하고 1장에서 마무리하지 못한 게임을 완성한다.

3장, ‘프로젝트 B: 우주전쟁’에서는 날아오는 적 우주선을 플레이어가 격추하는 간단한 우주전쟁(Space Shooter) 게임을 제작하는 두 번째 프로젝트를 시작한다.

4장, ‘우주전쟁 2부’에서는 3장에서 시작한 우주전쟁 게임을 마무리해 완전히 작동하는 게임으로 완성한다.

5장, ‘프로젝트 C: 2D 어드벤처’에서는 2D와 UI 기능에 초점을 맞추고 2D 물리에 기반을 두는 사이드뷰 플랫폼 게임을 만드는 데 필요한 유니티의 다양한 D2 기능을 살펴본다.

6장, ‘2D 어드벤처 2부’에서는 5장에 이어 2D 어드벤처 게임 프로젝트에 나머지 기능과 전체적인 게임 로직을 추가해 게임을 마무리한다. 게임의 여러 부분과 측면을 하나로 모아 게임을 구성하는 방법을 구체적으로 확인한다.

7장, ‘프로젝트 D: 인공지능’에서는 인공지능에 초점을 맞추고, 레벨 안에서 이동 경로를 따라 영리하게 순찰, 추적하며 지능적으로 플레이어 캐릭터를 공격하는 적을 만드는 과정을 다룬다.

8장, ‘인공지능 완성하기’에서는 7장에서 시작한 AI 프로젝트와 이 책의 전체 내용을 마무리한다. 특히 다양한 시나리오에서 인공지능 기능을 구현하는 데 도움이 되는 유한 상태 기계를 이용하는 방법을 배운다.

상세이미지

저자/역자 소개

지은이의 말

비디오 게임은 지난 50여 년 동안 전 세계 수십억 명의 사람들을 사로잡고 놀라운 경험을 선사한 사회적 현상이다. 비디오 게임은 개발자와 아티스트 모두에게 흥미로운 영역으로 자리 잡았다. 이러한 역할을 수행하며 비전과 아이디어, 작업을 통해 다양한 사용자에게 영감을 주고 이전에는 상상할 수 없는 방법으로 이후 모든 세대의 큰 영향을 주었다. 그리고 최근에는 더 광범위한 대상이 게임을 개발할 수 있도록 개발 프로세스를 간소화하고 접근성을 개선해 개발자가 자신의 집에서 매우 적은 예산으로 게임을 개발할 수 있도록 게임 개발의 방향이 전환되고 있다. 이러한 움직임의 중심에는 이 책의 주요 주제인 유니티 엔진이 있다. 유니티 엔진은 기존 애셋 파이프라인(예: 3D 모델링 소프트웨어)과 함께 작업하며 윈도우, 맥, 리눅스, 안드로이드 iOS, 윈도우 폰 등의 다중 플랫폼에서 원활하게 작동하는 비디오 게임을 컴파일하기 위한 컴퓨터 프로그램이다. 유니티를 이용하면 미리 제작한 애셋(예: 음악, 텍스처, 3D 모델)을 임포트하고 통합된 논리를 기반으로 작동하는 일관성 있는 게임으로 조립할 수 있다. 유니티는 놀라운 프로그램이다. 최신 버전은 대부분의 사용자가 무료로 다운로드해 사용할 수 있으며 김프(GIMP)나 블렌더(Blender)와 같은 다양한 무료 소프트웨어와 함께 사용하면 비용 부담 없이 게임을 개발할 수 있다. 이 책은 유니티 엔진을 활용해 플레이 가능한 재미있는 게임을 개발하는 방법을 다룬다. 프로그래밍과 스크립팅(예: 자바스크립트, 액션스크립트, C, C++, 자바, C#)에 대한 경험이 있으면 도움이 되겠지만 유니티에 대한 경험은 없다고 가정한다.

지은이 소개

앨런 쏜(Alan Thorn)

영국 런던에 거주하는 인디 비디오 게임 개발자며 작가와 수학자로도 활동하고 있다. 게임 개발 스튜디오인 왁스 리니컬 게임즈(Wax Lyrical Games)를 설립하고 PC 어드벤처 게임 <바론>를 개발했으며, 여러 유명한 게임 회사에서 프리랜서로 일하기도 했다. 또한 유럽 지역의 여러 유명한 교육기관에서 게임 개발에 대한 강의를 하고 있으며 『Teach Yourself Games Programming』, 『Game Engine Design and Implementation』, 『UDK Game Development』를 비롯해 게임 개발에 대한 아홉 권의 저서를 집필하기도 했다. 게임 개발 외에도 컴퓨팅, 수학, 그래픽, 철학에 관심이 많다. 왁스 리니컬 게임즈에 대한 자세한 내용은 웹페이지(http://www.waxlyricalgames.com/)에서 볼 수 있다.

옮긴이의 말

유니티는 게임 개발 업계는 물론 이 분야에 관심이 있는 개발자에게 가장 핫한 주제입니다. 유니티 5 이전에는 모바일과 웹 게임을 개발하는 소규모 업체와 개인 개발자가 유니티를 도입하는 데 적극적이었지만, 유니티 5로 오면서 대규모 업체에서도 관심을 가질 만한 강력한 기능이 대거 추가됐고 높게 평가되던 기존의 편리한 기능들도 더 세련되게 다듬어졌습니다.
유니티는 PC, 콘솔, 모바일, 웹을 비롯한 다양한 플랫폼에서 실행되는 게임을 개발하기 위한 통합 개발 환경이자 게임 엔진입니다. 그리고 기존의 다른 상업용 게임 엔진과 달리 전문가가 아니라도 쉽게 접근할 수 있다는 장점을 갖췄습니다. 게다가 대규모 업체와 소규모, 개인 개발자를 모두 만족시키는 유니티의 투트랙 전략 덕분에 소규모, 개인 개발자 입장에서는 고가의 게임 엔진에서나 사용할 수 있었던 강력한 최신 기능을 저렴한 비용(개인용 버전은 무료)으로 사용할 수도 있습니다.
이미 시중에 많은 유니티 책이 나와 있지만, 환경과 기능 위주로 나열하며 장황하게 설명하거나 하나의 거대한 프로젝트를 세세하게 진행하는 스타일의 책은 유니티를 처음 접하는 독자에게는 적합하지 않습니다. 이 책은 게임 디자인이나 프로그래밍에 대한 전문 지식이 없는 독자라도 직접 흥미로운 게임을 제작하면서 유니티의 기능과 개념을 처음부터 단계적으로 익힐 수 있게 구성됐습니다. 모쪼록 이 책을 통해 더 많은 독자들이 유니티의 매력을 제대로 느낄 수 있으면 좋겠습니다.

옮긴이 소개

최민석

2005년부터 번역 회사에서 언어 전문가로 일하다 독립한 후 현재는 IT 전문 번역가로 활동 중이다. 10여 년 동안 수백 건의 소프트웨어 현지화와 개발자 웹사이트 한글화 프로젝트를 진행했으며 지금은 IT 전문 서적을 번역하는 일에 집중하고 있다. 『유니티 5 메카님 캐릭터 애니메이션』(에이콘, 2016), 『유니티와 C#으로 배우는 게임 개발 교과서』(위키북스, 2015), 『네티 인 액션』(위키북스, 2016), 『엔터프라이즈 애플리케이션 아키텍처 패턴』(위키북스, 2015), 『자바 웹 개발 완벽 가이드』(위키북스, 2015), 『시작하세요! 스프링 4 프로그래밍』(위키북스, 2014), 『게임 디자인 워크숍』(위키북스, 2012) 등을 번역했다.

목차

목차
  • 1장. 동전 모으기 게임 1부
    • 게임 디자인
    • 시작하기: 유니티와 프로젝트
    • 프로젝트와 프로젝트 폴더
    • 애셋 임포트하기
    • 레벨 제작 시작하기
    • 변형과 이동
    • 씬 제작하기
    • 조명과 하늘
    • 플레이 테스팅과 Game 탭
    • 물 추가
    • 동전 추가
    • 요약

  • 2장. 프로젝트 A: 동전 모으기 게임 2부
    • 동전 매터리얼 만들기
    • 유니티의 C# 스크립트
    • 동전 기록하기
      • 예제 코드 2.3
    • 동전 모으기
      • 예제 코드 2.5
    • 동전과 프리팹
    • 타이머와 카운트다운
      • 예제 코드 2.6
    • 축하 폭죽!
      • 예제 코드 2.7
    • 플레이 테스트
    • 빌드
    • 요약

  • 3장. 프로젝트 B: 우주전쟁
    • 완성된 프로젝트 미리보기
    • 우주전쟁 시작하기
    • 플레이어 오브젝트 만들기
    • 플레이어 입력
      • 예제 코드 3.1
    • 게임 카메라 구성
    • 경계 잠금
      • 예제 코드 3.2
    • 체력
      • 예제 코드 3.3
    • 죽음과 파티클
      • 예제 코드 3.4
    • 적 우주선
      • 예제 코드 3.6
      • 예제 코드 3.7
      • 예제 코드 3.8
    • 적 스폰
      • 예제 코드 3.9
    • 요약

  • 4장. 우주전쟁 2부
    • 총과 포탑
    • Ammo 프리팹
      • 예제 코드 4.1
    • 탄알 스폰
      • 예제 코드 4.2
      • 예제 코드 4.3
    • 사용자 컨트롤
    • 점수 시스템: UI와 텍스트 오브젝트
    • 점수 처리하기
      • 예제 코드 4.4
    • 게임 다듬기
    • 테스트와 진단
    • 빌드
    • 요약

  • 5장. 프로젝트 C: 2D 어드벤처
    • 2D 어드벤처 시작하기
    • 애셋 임포트하기
    • 환경 만들기
    • 환경 물리
    • 플레이어 만들기
    • 캐릭터의 움직임 스크립팅
      • 예제 코드 5.1
    • 최적화
    • 요약

  • 6장. 2D 어드벤처 2부
    • 움직이는 발판
      • 예제 코드 6.1
    • 다른 레벨 추가하기
    • 위험지대
      • 예제 코드 6.2
    • UI 체력표시줄
      • 예제 코드 6.3
    • 탄알과 위험
    • 포탑과 탄알
    • NPC와 퀘스트
      • 예제 코드 6.8
    • 요약

  • 7장. 프로젝트 D: 인공지능
    • 프로젝트 개요
    • 시작하기
    • 지형 생성
    • 내비게이션과 내비게이션 메시
    • NPC 만들기
      • 예제 코드 7.1
    • 순찰하는 NPC 만들기
    • 요약

  • 8장. 인공지능 완성하기
    • 적 AI: 시야
      • 예제 코드 8.1
    • 유한 상태 머신의 개요
    • 예제 코드 8.2
    • 순찰 상태
      • 예제 코드 8.3
    • 추적 상태
      • 예제 코드 8.4
    • 공격 상태
      • 예제 코드 8.5
    • 요약

도서 오류 신고

도서 오류 신고

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

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

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