간편결제, 신용카드 청구할인
인터파크 롯데카드 5% (29,930원)
(최대할인 10만원 / 전월실적 40만원)
북피니언 롯데카드 30% (22,050원)
(최대할인 3만원 / 3만원 이상 결제)
NH쇼핑&인터파크카드 20% (25,200원)
(최대할인 4만원 / 2만원 이상 결제)
Close

유니티 2D 플랫포머 게임 개발 : 인디 게임 개발의 꽃

원제 : Learning 2D Game Development with Unity
소득공제

2013년 9월 9일 이후 누적수치입니다.

판매지수 18
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

35,000원

  • 31,500 (10%할인)

    1,750P (5%적립)

할인혜택
적립혜택
  • I-Point 적립은 마이페이지에서 직접 구매확정하신 경우만 적립 됩니다.
추가혜택
배송정보
  • 3/27(월) 이내 발송 예정  (서울시 강남구 삼성로 512)
  • 무료배송
주문수량
감소 증가
  • 이벤트/기획전

  • 연관도서

  • 상품권

AD

책소개

인디 게임 개발에서 가장 많은 사랑을 받고 있는 게임 장르가 있다면 주저 없이 플랫포머 장르라고 할 수 있다. 이 책은 유니티를 이용해 2D 플랫포머 장르 게임을 처음부터 끝까지 만드는 방법에 대해 다룬다. 유니티 설정, 캐릭터 이동, 게임 플레이 로직(적, 장애물, 움직이는 장애물 등), 사운드, GUI까지 모두 설명한다. 또한 게임 개발에 필요한 모든 미디어 데이터(그래픽, 사운드)를 제공하므로 누구나 쉽게 따라 하면서 플랫포머 장르의 게임을 만들어 볼 수 있다.

출판사 서평

★ 이 책에서 다루는 내용 ★

■ 유니티 개발 환경 설정, 툴 사용법
■ 애셋 제작과 임포트와 게임에 사용할 패키지 추가
■ 게임 스프라이트 설정, 유니티 2D 툴을 사용한 아틀라스 제작
■ 키프레임을 이용한 스프라이트 애니메이션, 애니메이션 컨트롤러, 스크립팅
■ 2D 게임 월드 제작의 처음부터 끝까지
■ 플레이어 컨트롤 설정
■ 올바르게 동작하는 움직임 제작
■ 플레이어 물리, 충돌체 설정
■ 클래식 게임 플레이어 제작 및 적용
■ 위험 요소 구현, 난이도 조절
■ 게임에 오디오, 파티클 이펙트 적용
■ 게임 인터페이스, 메뉴 제작
■ 부드러운 에러 핸들링을 위한 디버그 코드 작성
■ 게임 리소스 구성, 퍼포먼스 향상을 위한 최적화
■ 웹에서 플레이 가능한 게임 배포

★ 이 책의 대상 독자 ★

이 책은 게임을 처음부터 끝까지 만들어보는 과정을 배우고 싶은 사람들을 위해 쓰여졌다. 가령 초기 게임 아이디어부터 시작해, 계획, 디자인, 게임 제작, 배포하는 과정을 모두 포함하고 있다. 또한 유니티를 처음 사용하거나 유니티의 2D 기능을 배우고자 하는 사람에게 도움이 될 것이다. 스프라이트를 만들고 이를 이용해 스프라이트 아틀라스, 2D 물리, 게임 스크립트, 오디오, 애니메이션 제작에 이르는 모든 과정을 배울 수 있다. 유니티의 거의 모든 부분에 대해 자세히 살펴본다.

★ 이 책의 구성 ★

1장, 유니티 개발 환경 구축
유니티의 인터페이스, 프로젝트 계층 구조, 초기 프로젝트 설정을 다룬다.

2장, 애셋 구축
게임에서 사용할 게임 애셋들을 임포트하고 유니티 엔진이 어떻게 게임오브젝트(GameObject)를 사용하는지 이해한다. 게임 컴포넌트가 어떻게 동작하는지 기본 개념을 배우고, 복잡한 동작을 위해 어떻게 구성하는지 배운다. 마지막으로 서드파티 애셋, 패키지를 어떻게 임포트해서 게임 환경에 접목시키는지도 배운다.

3장, 2D 스프라이트 제작
2D 게임 플레이 제작을 위한 스프라이트 에디터, 유니티 프로에 있는 기능 몇 가지를 배운다.

4장, 게임 월드 제작
이미 만들어진 프리팹 게임오브젝트를 이용해 게임 플레이어가 돌아다닐 월드를 만든다. 게임오브젝트를 배치하려면 트랜스폼 툴을 어떻게 사용하는지, 레이어를 이용한 스프라이트 정렬은 어떻게 하는지를 알아본다. 마지막으로 스프라이트를 그룹화하고 부모-자식 관계의 설정, 씬 뷰, 계층 구조에서 이런 것을 관리하기 쉬운 이름 규칙을 배운다.

5장, 기본 이동, 플레이어 컨트롤
스크립트를 만드는 방법과 사용자 입력에 따라 게임오브젝트를 움직이는 함수, 게임에 필요한 메커니즘을 어떻게 스크립트로 제작하는지 배운다. 마지막으로 유니티에서 사용하는 프로그래밍 언어의 장, 단점을 간단히 알아보고 스크립트를 디버깅하는 방법에 대해 배운다.

6장, 씬에 애니메이션 추가
게임오브젝트와 스프라이트를 위해 애니메이션을 어떻게 설정하고 만드는지 배운다. 트랜스폼과 프레임 애니메이션의 차이점을 설명하고 애니메이터 상태 기계를 이용해 2D 스프라이트 행위를 어떻게 만드는지 배운다. 여기서 우리 게임에서 사용될 캐릭터의 메커니즘을 만든다.

7장, 플레이어 물리와 충돌체 설정
2D, 3D 게임오브젝트에 어떻게 물리를 추가하는지 배운다. 게임오브젝트에 충돌체를 설정하고 최고의 퍼포먼스를 내기 위해 어떤 작업을 해야 하는지 알아본다. 마지막으로 게임오브젝트에 힘을 반영해 어떻게 동적인 장면을 만들 수 있는지 배운다.

8장, 게임 플레이 시스템 제작과 적용
게임 플레이를 위한 요소, 예를 들어 집을 수 있는 아이템, 체크 포인트, 리스폰 같은 것을 어떻게 만드는지를 배운다. 유니티의 트리거 시스템을 어떻게 사용하는지 배우며, 게임 플레이에 관련된 게임 디자인 이론에 대해서도 간략하게 알아본다.

9장, 적 만들기와 난이도 조절
기본적인 적 만드는 방법과 어떻게 스크립트를 작성하는지 배운다. 데미지 처리를 위해 데미지 스크립트를 작성하고 스포닝(Spawning) 로직을 통해 적을 언제 생성하는지 배운다. 마지막으로 게임 플레이에 관련된 난이도 조절에 대한 이론을 배운다.

10장, 메뉴 제작과 인터페이스 다루기
게임에 필요한 가장 기본적인 메뉴와 더불어 게임 내 플레이어 HUD를 어떻게 만드는지 배운다. 메뉴에 따라 사용자 입력을 어떻게 처리하는지도 알아본다.

11장, 게임오브젝트에 이펙트 적용
애니메이션, 이펙트, 오디오와 같은 애셋들을 더 추가해서 어떻게 게임을 더 돋보이게 하는지를 배운다. 유니티 파티클 시스템에 대해 배우고, 오디오 리스너와 이펙트를 어떻게 게임 요소에 추가하는지 배운다.

12장, 프로젝트 구성과 최적화
다양한 플랫폼에 게임을 배포하려면 최적화가 필요한데 이를 위한 최적화 팁과 권고 사항들을 알아본다. 마지막으로 프로젝트를 구성하는 팁과 파일 처리에 대해 알아본다.

13장, 모든 것을 합치기
우리가 만든 게임을 유니티 웹 플레이어, 다른 플랫폼으로 어떻게 배포하는지를 배운다. 또한 성공적인 게임 출시와 수익을 위한 모범 사례들을 알아본다. 마지막으로 게임을 웹으로 어떻게 출시하는지 배운다.

14장, UGUI
14장은 보너스 장으로 유니티 4.6에 추가된 UGUI 시스템에 대해 배운다. UGUI 인터페이스와 관련된 컴포넌트, 마지막으로 새로운 Rect 트랜스폼 컴포넌트에 대해 배운다.

목차

소개
__유니티 소개
____유니티의 다운로드와 설치
__프로젝트 위자드
____Open Project 탭
____Create New Project 탭
____패키지
__프로젝트 설정
____프로젝트 구조
____폴더 구조화
____파일 이름 규약

1장 유니티 개발 환경 구축
__Welcome Screen
__유니티 인터페이스
____메뉴
____툴바
____Hierarchy
____Inspector
____Project 브라우저
____Scene 뷰
____Game 뷰
__요약
__연습 문제

2장 애셋 구축
__파일 포맷
____3D 포맷
____2D 파일 포맷
__애셋 임포트
____유니티 내부 애셋 임포트
____이미 제작된 애셋을 파일 브라우저에서 임포트하기
____애셋 생성
__임포트 패키지
____유니티 패키지
____사용자 패키지
__게임오브젝트
____첫 번째 게임오브젝트
____게임오브젝트 생성
__컴포넌트
____컴포넌트 생성
____컴포넌트 지정
____프리팹
__요약
__연습 문제

3장 스프라이트 제작
__2D 작업하기
____2D 행동
____2D 작업 공간
__스프라이트 빌드
____임포트 세팅
____Pixels To Units
____스프라이트 에디터
__스프라이트 패킹
____패킹 태그
____스프라이트 패커
____추가적인 스프라이트 리소스 패킹
__요약
__연습 문제

4장 게임 월드 제작
__레벨 디자인 101
____씬 설정
____로드맵 만들기
____세부 사항 추가
__씬 둘러보기
____씬 기즈모
____원근법과 등거리법의 비교
____카메라 조작
__유니티에서 오브젝트 조작
____트랜스폼 툴
____Z 깊이
____세팅
__첫 번째 레벨
____게임오브젝트 수동으로 위치시키기
____게임오브젝트 배치를 위한 스냅 세팅의 사용
____그리드 스내핑을 통한 게임오브젝트 위치 잡기
____효율적인 레벨 디자인
____정렬 요소 추가
__계속하기
__요약
__연습 문제

5장 기본 이동, 플레이어 컨트롤
__유니티3D 코딩
____세 언어
__ __ ‘올바른’ 언어 선택하기
__플레이어를 ‘움직이게’ 만들자
____이동 처리를 위한 방법
____PlayerController의 생성과 연결
__추적 카메라 세팅
__인풋 매니저 소개
__에러 처리 및 디버깅
____예외 처리
____Try-Catch-Finally: 우아한 예외 처리법
____여러분의 친구 Debug.Log( )
____브레이크 포인트를 이용한 게임 중단
__요약
__연습 문제

6장 씬에 애니메이션 추가
__애니메이션을 위한 몇 가지 룰
____애니메이션 원리들
____2D 애니메이션과 3D 애니메이션의 비교
____트랜스폼과 프레임 애니메이션의 비교
____스크립트 애니메이션
____애니메이션 임포트
__애니메이션 생성
____애니메이션 컴포넌트
____애니메이션 클립
____애니메이션 윈도우
____애니메이션 이벤트
__애니메이션 상태
____애니메이터 컨트롤러
____애니메이터 컴포넌트
____Animator 윈도우
____플레이어 컨트롤러 편집하기
__상태 기계 작업하기
____전이
____Any State
____블렌드 트리
__요약
__연습 문제

7장 플레이어 물리, 충돌체 설정
__물리의 이해
____질량
____중력
____
__2D와 3D의 차이
____6DoF
____Z-깊이
____회전
__2D 물리 세팅
____일반 물리 세팅
____레이어 컬리전 매트릭스
__강체
__충돌체
____원 충돌체
____박스 충돌체
____모서리 충돌체
____다각형 충돌체
__피직스 메터리얼
__콘스트레인트
__요약
__연습 문제

8장 게임 플레이 시스템 제작, 적용
__유니티의 트리거 볼륨
____Trigger2D 함수
____게임오브젝트에 트리거 컴포넌트 추가하기
__체크 포인트 만들기
____Checkpoint 컴포넌트 스크립트
____체크 포인트 트리거의 크기 조절과 배치
__리스폰과 함께 체크 포인트 사용하기
____구덩이 트리거 볼륨 준비하기
____Pit Trigger 컴포넌트 스크립트
__수집품 만들기
____수집을 위한 공중에 있는 코인 준비
____CoinPickup 컴포넌트 스크립트
____수집을 위한 뻥! 터지는 코인 준비하기
____코인 박스 프리팹 준비하기
____Coin Box 컴포넌트 스크립트
____CoinSpawner 컴포넌트 스크립트
____모든 것을 합치기
____다듬기
__플레이어 상태 추적
__요약
__연습 문제

9장 적 만들기와 난이도 조절
__적 만들기
____슬라임 게임오브젝트 준비하기
____상속과 EnemyController 컴포넌트
____Enemy Slime 컴포넌트 스크립트
____레벨에 벽 추가하기
____슬라임들끼리 충돌 처리하기
____슬라임에 애니메이션 추가하기
__데미지 입히기
____PlayerStats 컴포넌트에 데미지 처리 기능 추가하기
____데미지 트리거 만들기
____플레이어 통과하기
____구덩이에 데미지 기능 추가하기
____무적 기능 추가하기
____고전적인 방법으로 무적을 표현하기
__플레이어 죽음 처리
__플랫포밍의 확장
____움직이는 플랫폼 프리팹 준비하기
____Flight Point 컴포넌트 스크립트
__두 번째 적 만들기
____Fly Enemy 게임오브젝트 준비하기
____Fly Enemy에 애니메이션 추가하기
____FlyController 컴포넌트 스크립트
____FlightPoints 스크립트 수정하기
__적 배치하기 유지하기
____스폰 트리거 준비하기
____SpawnTrigger 컴포넌트 스크립트
__도전에 대한 몇 마디
__요약
__연습 문제

10장 메뉴 제작과 인터페이스 다루기
__UI 디자인
____다이어제틱
____비다이어제틱
____메타
____스페이셜
__유니티 네이티브 GUI
____GUI 스타일
____GUI 스킨
____GUI 컨트롤
____조합 컨트롤
____GUI 클래스
____GUI 레이아웃
____GUI 텍스트
____GUI 텍스처
__스플레시 스크린 만들기
__타이틀 스크린
__게임 오버 스크린
__게임 승리 스크린
__HUD
____외관 만들기
____스크립트 만들기
__요약
__연습 문제

11장 게임오브젝트에 이펙트 적용
__슈리켄 파티클 시스템 도입
____알아야 할 용어들
____파티클 시스템 만들기
__파티클 시스템의 모듈, 속성
____기본 파티클 시스템 속성
____다른 파티클 시스템 모듈들
____파티클 시스템 커브
__게임에 파티클 이펙트 추가하기
____코인 박스를 위한 파티클 이펙트 만들기
____코인 박스 파티클 이펙트 사용하기
____데미지를 위한 파티클 이펙트 만들기
____코드로 데미지 파티클 시스템 호출하기
____파티클을 가지고 놀아 보자
__유니티의 오디오 시스템
____오디오 소스 컴포넌트
____오디오 리스너 컴포넌트
____오디오 리버브 존 컴포넌트
__플레이어에 사운드 추가하기
____걷기 애니메이션에 사운드 추가하기
____점프 이벤트에 사운드 추가하기
____데미지 이벤트에 사운드 추가하기
__수집 아이템에 사운드 추가하기
____코인 박스에 사운드 추가하기
____코인 먹을 때 사운드 추가하기
__applying some extra polish
____카메라 로직 정리하기
____죽음 처리 개선하기
__요약
__연습 문제

12장 프로젝트 구성, 최적화
__애셋 구성
____프리팹 구성하기
____라벨
____계층
__스크립트와 코드 구성
____스크립트 파일 관리하기
____코드 관리하기
__최적화
____프리팹
____물리
____드로우 콜
____스프라이트
____삼각형 개수
____배칭
____렌더링 통계 윈도우
__요약
__연습 문제

13장 모든 것을 합치기
__레벨 묶기
____승리 트리거 프리팹 준비하기
____승리 트리거 스크립트 만들기
____코인 값 복구하기
__인트로 스크린 사용하기
__승리, 실패: 게임 재시작
____게임 오버에서 게임으로 되돌아가기
____게임 클리어에서 다시 시작하기
__게임 빌드, 배포하기
____웹 플레이어를 위한 빌드 세팅
____PC, 맥, 리눅스 스탠드 얼론 빌드 세팅
____크로스플랫폼 플레이어 세팅
____웹 플레이어의 플레이어 세팅
____우리가 설정할 것들
____웹 플레이어를 위한 게임 빌드
____게임을 웹에 올리기
____배포 후 처리
__앞으로 나아가기
____고려할 만한 개선점
____유료화 모델
__마지막으로

14장 UGUI
__UGUI 컴포넌트들
__예제 인터페이스 만들기
____Canvas 컴포넌트
____Rect Transform
____UI Rect 도구
____마스크 추가
____이벤트 시스템, 이벤트 트리거
__요약

부록 자바스크립트 코드 예제
__Player 스크립트
__Collectible 스크립트
__Enemy 스크립트
__게임 시스템 스크립트
__GUI 스크립트
__위험 요소 스크립트
__시스템 스크립트

저자소개

매튜 존슨 [저] 신작알림 SMS신청
생년월일 -

해당작가에 대한 소개가 없습니다.

문기영 [역] 신작알림 SMS신청
생년월일 -

해당작가에 대한 소개가 없습니다.

전공도서/대학교재 분야에서 많은 회원이 구매한 책

    리뷰

    0.0 (총 0건)

    100자평

    작성시 유의사항

    평점
    0/100자
    등록하기

    100자평

    0.0
    (총 0건)

    판매자정보

    • 인터파크도서에 등록된 오픈마켓 상품은 그 내용과 책임이 모두 판매자에게 있으며, 인터파크도서는 해당 상품과 내용에 대해 책임지지 않습니다.

    상호

    (주)교보문고

    대표자명

    안병현

    사업자등록번호

    102-81-11670

    연락처

    1544-1900

    전자우편주소

    callcenter@kyobobook.co.kr

    통신판매업신고번호

    01-0653

    영업소재지

    서울특별시 종로구 종로 1(종로1가,교보빌딩)

    교환/환불

    반품/교환 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청 또는 1:1 문의 게시판 및 고객센터(1577-2555)에서 신청 가능

    반품/교환가능 기간

    변심 반품의 경우 출고완료 후 6일(영업일 기준) 이내까지만 가능
    단, 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내

    반품/교환 비용

    변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
    상품이나 서비스 자체의 하자로 인한 교환/반품은 반송료 판매자 부담

    반품/교환 불가 사유

    ·소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)

    ·소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등

    ·복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집

    ·시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우

    ·전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우

    상품 품절

    공급사(출판사) 재고 사정에 의해 품절/지연될 수 있음

    소비자 피해보상
    환불지연에 따른 배상

    ·상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨

    ·대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

    (주) 인터파크커머스 안전결제시스템 (에스크로) 안내

    (주)인터파크커머스의 모든 상품은 판매자 및 결제 수단의 구분없이 회원님들의 구매안전을 위해 안전결제 시스템을 도입하여 서비스하고 있습니다.
    결제대금 예치업 등록 : 02-006-00064 서비스 가입사실 확인

    배송안내

    • 교보문고 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다.

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능합니다.

    • 배송비는 업체 배송비 정책에 따릅니다.

    • - 도서 구매 시 15,000원 이상 무료배송, 15,000원 미만 2,500원 - 상품별 배송비가 있는 경우, 상품별 배송비 정책 적용