장바구니 담기 close

장바구니에 상품을 담았습니다.

유니티 2D 게임 만들기

유니티 2D 게임 만들기 acorn+PACKT 시리즈

  • 베니타 퍼레이라
  • |
  • 에이콘출판
  • |
  • 2015-05-27 출간
  • |
  • 264페이지
  • |
  • 188 X 235 X 16 mm /654g
  • |
  • ISBN 9788960777132
★★★★★ 평점(10/10) | 리뷰(2)
판매가

25,000원

즉시할인가

22,500

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
22,500

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

★ 요약 ★

유니티를 처음 접하거나 유니티의 2D 기능에 낯선 모든 초급자를 위한 책이다. 유니티의 2D 도구와 기본적인 게임 프로그래밍에 대해 예제를 곁들여 자세히 설명한다. 캐릭터를 만들어 이동시키고, 적을 생성하고 파괴하는 코드를 만든다. 충돌, 시차 스크롤, Box2D 등을 이용해 클래식 아케이드 게임, 횡스크롤 게임, 로그류 게임, 물리 게임, 스페이스 버디 게임의 5가지 게임 예제를 함께 만들어봄으로써, 유니티 게임을 만드는 방법을 단계적으로 익혀 완전한 형태의 게임을 만드는 방법을 안내한다.

★ 이 책에서 다루는 내용 ★
■ 유니티의 새로운 2D 기능을 활용해 2D 씬 만들기
■ 타일셋(tileset)을 사용해 여러 종류의 정적, 동적 배경으로 씬 설정하기
■ 간단한 애니메이션을 활용해 캐릭터에 생명 불어넣기
■ 캐릭터를 조작하고 적을 파괴하는 기본적인 코드를 만들며 프로그래밍의 핵심 개념 이해하기
■ 입력을 감지하는 코드를 활용해 버튼과 게임 컨트롤 만들기
■ 클래식 아케이드 게임, 횡스크롤 게임, 로그류 게임, 물리 게임, 스페이스 버디 게임 등 5가지 실전 2D 게임 만들기
■ 오디오와 피드백 기능을 추가하고 게임 배포하기

★ 이 책의 대상 독자 ★

유니티에 완전 처음인 초급자이든 이전에 유니티를 사용했지만 유니티의 새로운 2D 기능을 배우길 원하는 사람이든 자신만의 2D 게임을 만드는 것에 관심이 있다면 이 책이 도움이 될 것이다.

★ 이 책의 구성 ★

1장, ‘유니티 소개’에서는 새 프로젝트 생성 옵션으로 2D 씬을 만들어 유니티의 새로운 2D 기능을 이용하는 방법을 살펴본다. 다음으로 유니티 에디터 인터페이스를 구성하는 여러 뷰를 살펴본다.

2장, ‘씬 설정’에서는 타일셋(tileset)을 사용해 정적, 동적 배경을 비롯한 씬을 설정할 수 있도록 2D 카메라를 다루는 방법을 배운다.

3장, ‘캐릭터 추가’에서는 스프라이트 도구로 게임에 캐릭터를 추가하는 방법을 살펴본다. 도프시트(dopesheet) 기능으로 간단히 캐릭터의 idle 애니메이션을 만들며 2D 애니메이션에 대해 배운다.

4장, ‘코드 작성’에서는 간단한 출력부터 캐릭터 조작과 적 파괴까지 기본적인 코드를 유니티 스크립트로 만들며 핵심 개념을 살펴본다.

5장, ‘입력장치’에서는 다양한 입력 종류와 상태를 배운다. 그런 후 입력을 감지하는 코드를 통해 어떻게 버튼과 게임 조작을 구현하는지 배운다.

6장, ‘게임 #1: 로그류 게임’에서는 유니티에서 유니티스크립트를 이용한 첫 2D 게임을 만드는 방법을 배운다. 이 게임은 이동, 충돌, 트리거, 상태, 포탄, 경계, 개체 무작위 생성에 대한 내용을 포함한다.

7장, ‘게임 #2: 클래식 아케이드’에서는 클래식 아케이드 게임에서, 게임 상태와 이것을 UI 구성요소를 통해 구현한 HUD를 통해 화면 상에 표시하는 방법을 배운다.

8장, ‘게임 #3: 무한 달리기’에서는 유니티의 2D 시차 스크롤에 대한 내용을 살펴보고 이를 통해 파티클 이펙트로 치장된 무한 달리기 횡스크롤 게임을 직접 만드는 방법을 배운다.

9장, ‘게임 #4: 물리 놀이’에서는 유니티의 Box2D 물리 기능을 살펴보고 현실 세계의 물리를 시뮬레이션하는 앵그리 버드(Angry Birds)와 유사한 물리 게임을 만드는 방법을 배운다.

10장, ‘기능 추가와 게임 배포’에서는 오디오, 피드백, 게임 배포를 통해 남은 여정을 준비한다. 이 책을 통해 배운 내용들을 모두 활용해서 두들 점프(Doodle Jump)와 비슷한 게임을 만든다. 마지막으로, 참고할 만한 리소스와 함께 향후 2D 게임 개발의 여정을 안내한다.

★ 지은이의 말 ★

게임을 즐기는 많은 이들은 창조적이고 상상력이 풍부하며 기존의 게임보다 더 나은 자신만의 게임을 만들고 싶어한다. 단지 재미를 위해서든, 순수한 열정이든, 직업적인 이유든 간에 가장 대규모이고, 보상도 크며, 돈이 되는 업계 중 하나가 게임업계이다.

이런 이유로 게임 개발은 골드러시와 비슷한 점이 많다. 우리는 모두 꿈을 가지고 있지만, 오랜 시간 동안, 제대로 된 방법을 모르거나 잘못된 길로 가는 경우가 많다.

이 책의 목표는 게임 개발의 전체 그림을 보여주고, 소화하기 쉽게 작은 구성요소로 쪼개어 순서대로 차근차근 설명하여 초보자의 입문을 돕는 데 있다. 이미 유니티에 숙련된 이들은 유니티의 새로운 2D 기능들을 빠르고 쉽게 배울 수 있다.

게임을 만들 때, 항상 새로운 것을 배우고 새로운 것들을 발견하게 된다. 모든 사람들은 각자가 원하는 수많은 게임 구조와 다양한 시나리오를 만들길 원하기 때문에 책 한 권만으로 그 모든 것을 알려줄 수는 없다. 하지만 이 책에서는 다양한 장르의 게임을 통해 기초가 되는 모든 내용을 다룸으로써, 여러분이 책을 다 읽고 나면 원하는 어떤 게임이든 만들 수 있게 될 것이다.

★ 옮긴이의 말 ★

이 책을 저술한 베니타 퍼레이라는 흔치 않은 여성 게임 프로그래머이다. 내가 13여 년간 게임 업계에서 일하는 동안 여성 프로그래머를 단 두 명만 보았을 정도로 유독 게임 분야에서 일하는 여성 프로그래머는 흔하지 않다. 일반화하기에는 무리가 있겠지만, 함께 일해본 경험으로, 여성 프로그래머들의 경우엔 공통적으로 디테일을 놓치지 않는 꼼꼼한 작업 스타일이 인상적이었다.

우연인지는 모르겠으나, 여성 프로그래머가 집필한 이 책의 내용 설명에서도 비슷한 느낌을 받을 수 있었다. 대충 설명하고 넘어갈 수도 있는 부분들을 그냥 흘려 보내지 않고 매번 자세히 짚어 설명한 지은이의 꼼꼼함 덕분에, 독자들이 각 단계를 따라오는 중간에 흐름을 놓쳐 당황하는 일은 많지 않을 것이다. 여담이지만, 나는 책을 번역할 때 원서에 나오는 외국인 이름의 한글 표기를 가능하면 본인이 발음하는 그대로 옮기려고 고민하는데, 지은이에게 연락이 가능할 때는 지은이가 해당 원어를 어떻게 발음하는지 직접 물어보기도 한다. 이 책을 옮기면서도 지은이에게 트위터를 통해 이름을 어떻게 발음하는지 조언을 구했더니 한국어판 도서 출간에 기뻐하면서 친절하게도 자신의 이름 발음을 녹음한 영상을 전달해왔다. 바로 책에서 느낄 수 있었던 그런 친절함이 그대로 묻어나온 것이다.

모바일을 비롯한 멀티플랫폼 환경이 대세가 된 오늘날, 유니티 엔진은 이미 업계의 표준이 되었다고 할 수 있을 정도로 널리 사용되고 있다. 유니티 엔진은 프로그래머는 물론이고 게임 디자이너(기획자)나 아티스트에게 그저 그들이 담당하는 작업물을 산출하기 위한 도구를 넘어서 본질적으로 ‘게임’에 접근하도록 가능성을 활짝 열어주고 있다.

이 책은 유니티 엔진을 처음 접해보는 초급자뿐 아니라, 게임 프로그래밍이 처음인 입문자, 그리고 프로그래밍을 전공하지 않은 다른 직군 종사자에게, 유니티 엔진을 이용한 게임 개발에 꼭 필요한 기본적인 게임 프로그래밍 지식을 함께 알려주는 책이다.

유니티의 모든 기능을 샅샅이 소개하는 레퍼런스가 아닌, 2D 예제 게임들을 함께 만들며 유니티 엔진을 이용한 게임 개발 방법을 익히는 입문서다. 마음을 편히 가지고 책에서 소개하는 기본 설명과 다섯 개의 예제들을 순서대로 따라가다 보면 유니티를 이용한 게임 개발의 전반적인 흐름을 충분히 익힐 수 있을 것이다. 이 책을 끝까지 보고 나면 좀 더 어려운 유니티 개발 책의 내용을 비교적 쉽게연결해 볼 수 있게 될 것이다.

목차

1장 유니티 소개
__개요
__게임 개발 배경지식
__유니티 소개
__유니티 설정
__새 2D 프로젝트 생성
__유니티 에디터 인터페이스
____툴바
____Scene 뷰
____Game 뷰
__Project 브라우저
____애셋 생성
____애셋 검색
____즐겨 찾는 애셋 설정
_______유니티 애셋 스토어
_______애셋 임포트
____Hierarchy 탭
_______부모/자식 노드
_______게임오브젝트(GameObject) 생성
____Inspector 탭
_______컴포넌트 추가
__그 밖의 뷰
____콘솔 뷰
_______애니메이션 뷰
_______스프라이트 에디터
_______애니메이터 뷰
_______프로파일러(Profiler) 뷰
__요약

2장 씬 설정
__개요
__배경이란
__배경을 만드는 두 가지 방법
____정적 이미지를 이용하는 방법
________애셋 임포트
____인스펙터에서 스프라이트 설정
_______Texture Type(텍스처 형식)
_______Sprite Mode(스프라이트 모드)
_______Packing Tag(패킹 태그)
_______Pixels to Units(유닛당 픽셀 수)
_______Pivot(중심점)
_______Filter Mode(필터 모드)
_______Platform Settings(플랫폼 설정)
_______설정 적용
____애셋을 게임오브젝트(GameObject)에 할당
_______툴바를 이용한 방법
_______또 다른 빠른 방법
____게임오브젝트 인스펙터 설정
_______배경 위치 설정
_______배경 색상 설정
_______배경 겹치기
__타일을 이용한 배경 설정
____이음매 없는 텍스처
____모서리 조각
____격자 설정
____프리팹 만들기
__완성된 환경
____카메라 설정
____전경 설정
__요약

3장 캐릭터 추가
__개요
__스프라이트란
__스프라이트 만들기
____이미지 편집 소프트웨어
____스프라이트 시트
____래스터(raster)와 벡터(vector) 비교
____파일 포맷
______스프라이트 임포트
______스프라이트 시트 나누기
______스프라이트 에디터
______수동으로 나누기
________선택 영역 추가/삭제
________툴바 컨트롤
__자동 나누기
______나누기 방법: Automatic
______나누기 방법: Grid
__텍스처 아틀라스
______텍스처 아틀라스란
______스프라이트 패커
__캐릭터 추가하기
__스프라이트 렌더러
__스프라이트 애니메이션
__애니메이션 에디터
__도프시트 2D 애니메이션
__애니메이터
__요약

4장 코드 작성
__개요
__왜 코드가 필요할까
____프로그래밍 언어
____프로그래밍 언어의 단계
______기계어
______어셈블리어
______고수준 언어
____스크립트 언어
____유니티스크립트, C#, Boo
__코딩 기초
____데이터 형식
____연산자
____함수
____조건문
______If…else
____주석
____클래스
______private과 public
____외부 라이브러리 임포트
____코드 편집기
__Hello world
__캐릭터 조작
__적 파괴
__코루틴(Coroutine)
__네임스페이스
__유니티 스크립팅 레퍼런스
__요약

5장 입력장치
__개요
__입력과 출력
____게임에서의 입력
____게임에서의 출력
__입력 방식
__출력 방식
______영상 출력
______오디오
______컨트롤러 진동
__유니티 인풋 매니저
__입력 감지
__버튼
______OnGUI
______GUILayout.Button
__게임 컨트롤
______레이캐스팅
__요약

6장 게임 #1: 로그류 게임
__개요
__로그류 게임이란
__배경 추가
__히어로 애니메이션
______애니메이션: 아래로 걷기
______애니메이션: 왼쪽으로 걷기
______애니메이션: 오른쪽으로 걷기
______애니메이션: 위로 걷기
__이동 조작
______이동 조작 애니메이터
______이동 조작 스크립트
__무작위 적 생성
__적 애니메이션
__적 이동
__포탄 발사
__충돌 감지
__게임 오버
__게임 결과
__요약

7장 게임 #2: 클래식 아케이드
__개요
__스펀지 놀이
____주인공: 스펀지
____욕실
____스펀지 추가
____좌우로 움직이기
____때 생성
____산성 세제 생성
__게임 상태
____생명
____점수
____시간
__HUD 추가
__폰트 스타일
__리소스 관리
__완성된 게임
__요약

8장 게임 #3: 무한 달리기
__개요
__무궁무진함
__날쌘 닌자
__닌자 캐릭터
____달리기
____Jump and Slide
____애니메이터 파라미터 추가
____애니메이터 상태 및 트랜지션
____이동 조작
__무작위로 반복되는 장애물
__생존
__시차 스크롤
__파티클 이펙트로 활기 불어넣기
__타이머 표시
__게임 결과
__게임을 어떻게 확장할 것인가
__요약

9장 게임 #4: 물리 놀이
__개요
__물리 기초
____현실 세계에서 발견할 수 있는 물리
__Physics 2D
__Box2D란
__물체를 만드는 과정
__시뮬레이션
____게임 환경
______씬 만들기
______배경 만들기
______전경
______소품 추가
____대포알 발사
____대포알 만들기
__최종 결과
__게임을 어떻게 확장할 것인가
__요약

10장 기능 추가와 게임 배포
__개요
__오디오
____음악
____사운드 이펙트
__저장 및 불러오기
__트리거 만들기
__카메라
__멀티플레이어
__모두 합치기
____첫 번째 씬
____은하계
____플랫폼
____트리거
____용암
____UFO 빔
__오디오 추가
__카메라
__저장 및 불러오기
__에일리언 스페이스 버디
____스페이스 버디 스크립트
____위치 조정
__두 번째 씬
____최종 결과
__배포
__앞으로의 여정
__방대한 리소스
____온라인 리소스
____오프라인 이벤트
____무료 리소스
____게임 호스팅
__소셜 미디어
__요약

저자소개

저자 베니타 퍼레이라 (Venita Pereira)는 7세부터 게임과 함께 자라났으며, 게임에 대단한 열정을 품고 있다. 게임 규모에 상관하지 않고 모든 종류의 게임을 즐기는 게임통이며, 기술과 관련된 모든 것에 관심이 많은 테크 긱(geek)이기도 하다. 프리토리아 대학(University of Pretoria)에서 멀티미디어를 전공해 정보과학 학사 학위를 받았으며, 게임 업계에서 7년이 넘는 경력을 쌓았다. 또한 콘솔, PC, 모바일을 통틀어 모든 플랫폼에서 다양한 장르의 게임 개발을 해왔다. 클라이맥스(Climax), 팀17(Team17 Digital Ltd.), 아이디어웍스3D(Ideaworks3D), 자?스(Jagex), 세가(SEGA), 풀팻(Full Fat) 등의 대규모 게임회사와 액티비전(Activision), 스퀘어 에닉스(Square Enix), 일렉트로닉 아츠(EA, Electronic Arts), 하스브로(Hasbro) 등의 대형 퍼블리셔에서 일한 경력이 있다.
[소닉 대쉬(Sonic Dash)], [소닉 점프(Sonic Jump)], [스텔라 던 MMO(Stellar Dawn MMO)], [트랜스포머 3(Transformers: Dark of the Moon)], [킹 오브 더 코스 골프(King of the Course Golf)], [라라 크로프트와 빛의 수호자(Lara Croft and the Guardian of Light)], [에일리언 브리드 트릴로지(Alien Breed Trilogy)], [레저 수트 래리: 박스 오피스 버스트(Leisure Suit Larry: Box Office Bust)], [엘비언(Elveon)] 등의 게임에 참여했다.

도서소개

[유니티 2D 게임 만들기]는 유니티를 처음 접하거나 유니티의 2D 기능에 낯선 모든 초급자를 위해 유니티의 2D 도구와 기본적인 게임 프로그래밍에 대해 예제를 곁들여 자세히 설명한다. 책은 유니티의 새로운 2D 기능을 활용해 2D 씬 만들기, 타일셋(tileset)을 사용해 여러 종류의 정적, 동적 배경으로 씬 설정하기, 간단한 애니메이션을 활용해 캐릭터에 생명 불어넣기, 캐릭터를 조작하고 적을 파괴하는 기본적인 코드를 만들며 프로그래밍의 핵심 개념 이해하기, 입력을 감지하는 코드를 활용해 버튼과 게임 컨트롤 만들기, 오디오와 피드백 기능을 추가하고 게임 배포하기 등을 다루고 있다.

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.