스크랩

구간

절대강좌! 유니티 Unity 전문 개발자가 알려주는 효과적인 게임 제작 기법

시리즈 : 위키북스 게임개발 시리즈 [23]

이재현 저 | 위키북스 | 2018년 05월

미리보기 북트리

정가
$96.00
판매가
$69.98 (27%↓) 최저가 보상
적립금
$1.40 (2%P)

품절된 상품입니다.

이 책을 꼭 원하시는 고객님께서는 아래 "상품문의"를 클릭 후 구매의사를
알려주세요. 책이 확보 될 경우 연락 드리겠습니다.

북카트 바로구매 위시리스트

평점 -  ·  리뷰 0

리뷰 쓰기

ISBN : 9791158391058 / 772쪽 188 x 240 (㎜)

이 상품에 궁금하신점이 있으세요? 1:1상담문의

추천inside
Adobe Flash Player 가져오기

이 분야의 베스트셀러

아래의 도서와 구매하시면 이 도서들의 적립금을 즉시적용해 드립니다.

책 소개

출판사 리뷰

유니티 2018 버전과 더불어 한층 더 충실하게 보강된 내용으로 돌아온 '절대강좌! 유니티' 유니티는 현재 가장 각광받고 있는 게임 개발 엔진으로, 국내외를 막론하고 출시되는 많은 모바일 게임은 물론 비게임 분야인 VR/AR, 영화, 산업 전반에서 유니티를 도입하는 추세다. 이 책에서는 유니티의 최신 버전인 유니티 2018을 이용해 게임 개발에 필요한 기능을 먼저 학습한 후 진행하는 방식이 아닌, 게임을 만들어 나가면서 필요한 기능을 알아보고 직접 구현하는 방식으로 진행한다. 유니티 2018에서 변경된 내용에 맞춰 책의 소스코드를 개정했으며 적 캐릭터의 AI에 시야각 기능을 추가해 개선하고 인벤토리 UI의 구현 및 데이터 저장 기법까지 다루고 있어 더욱 완성도 높은 게임을 구현하는 데 크게 도움될 것이다. 독자는 이 책을 끝까지 읽고 따라 하다 보면 어느새 게임 개발에 필요한 각종 지식을 습득하게 될 것이다. ★ 이 책에서 다루는 내용 ★ ◎ 유니티 설치 및 인터페이스 소개 ◎ 게임 스테이지 제작 ◎ 레거시 애니메이션 및 메카님 애니메이션 ◎ 적 캐릭터(NPC)의 유한상태머신(FSM; Finite State Machine) 구현 ◎ 내비게이션 메쉬를 이용한 적 캐릭터 추적 기능 ◎ 현실적인 폭발 효과 및 Muzzle Flash 구현 ◎ 실시간 그림자와 모바일용 그림자 처리 ◎ 레이캐스트(Raycast)를 응용한 발사 처리 ◎ 능동적인 카메라 워킹 기법 소개 ◎ 새로운 GUI 시스템인 유니티 UI 소개 및 게임 인터페이스 구현 ◎ 게임매니저 및 오브젝트 풀 구현 ◎ 내비게이션 고급 기법(동적 장애물, Off Mesh Link) 소개 ◎ 라이트매핑 및 라이트 프로브 소개 ◎ 인벤토리 UI 구현 및 아이템의 드래그, 드롭 기능 구현 ◎ PlayerPrefs, 파일, ScriptableObject를 활용한 데이터 저장 기법 소개 ◎ Progressive 라이트매퍼를 이용한 라이트맵 및 라이트 프로브 소개

저자 소개

  • 저자 : 이재현
이재현
SI업계에서 13년간 프리랜서 개발자로 일하다가 2008년 아이폰 게임 개발에 첫발을 내디뎠다. 이후 유니티 게임 개발로 전향해 1인 개발자로 다수의 게임을 출시했으며 2014년 국내 유니티 엔진의 기본서로 손꼽는 《절대강좌! 유니티》 시리즈를 집필했다. 현재는 1인 개발, 유니티 서적 집필 및 오프라인 강의를 진행하며 최근 유니티 코리아 공인 마스터스로 활동 중이다.



책 속에서

목차

▣ 01장: 유니티 게임 엔진의 소개
통합 멀티미디어 엔진으로의 진화
유니티의 장점
___멀티 플랫폼 지원
___통합 개발 환경(IDE)
___유니티 라이선스 정책
___정보 공유를 위한 커뮤니티 활성화
___애셋 스토어
유니티로 만들어진 게임
유니티 설치
___유니티 설치과정
___유니티 계정 생성 및 로그인
유니티 에디터 소개
___유니티 에디터 구조
___뷰
___툴 바 및 타이틀 바
___단축키 설정
정리

▣ 02장: 게임 개발 준비
개발할 게임 소개 및 개발 순서
새 프로젝트 생성
유니티 에디터의 환경설정
프로젝트 뷰의 체계적인 관리
캐릭터모델 임포트하기
애셋 스토어
애셋 스토어에서 리소스 내려받기
정리

▣ 03장: 게임 스테이지 제작
바닥 생성 및 배치
텍스처
___텍스처 임포트
___텍스처의 해상도 조절
머티리얼
___머티리얼 적용 방법
___타일링 속성
셰이더 및 물리 기반 셰이딩
___렌더링 모드
___알베도
___메탈릭 속성
___노멀 맵
___하이트 맵
___오클루전
___이미션
___디테일 마스크
프리팹
___벽 만들기
___프리팹 생성
___프리팹의 복제
___스내핑 기능
조명
___Directional Light
___Point Light
___Spot Light
___Area Light
하늘 표현 방식
___6방면 스카이박스
___프로시저럴 스카이박스
___큐브맵 스카이박스
정리

▣ 04장: 주인공 캐릭터 제작
3D 모델 불러오기
컴포넌트
스크립트 생성
키보드 입력값 받아들이기
___InputManager
___스크립트 적용 방식
캐릭터 이동 - Translate
___컴포넌트 캐시 처리
___Private 변수의 Inspector 노출
___게임오브젝트의 이동 및 회전
___Translate 함수
___정규화 벡터
___벡터의 덧셈연산
캐릭터 회전 - Rotate
카메라 추적 - SmoothFollow
레거시 애니메이션
___애니메이션 클립
___애니메이션 적용
___애니메이션 컨트롤
___애니메이션 블렌딩
무기 장착
그림자
___실시간 그림자
___Mesh를 이용한 그림자
Level Of Detail 설정
정리

▣ 05장: 총알 발사 로직
총알 모델 준비
Rigidbody 컴포넌트
물리엔진 속성 설정 - Physics Manager
Collider 컴포넌트
___Box Collider
___Sphere Collider
___Capsule Collider
___Mesh Collider
___Wheel Collider
___Terrain Collider
충돌 감지 조건
충돌 이벤트
Tag 활용
총알 발사 로직
___총알의 발사 위치
___런 모드에서 수정한 속성
___기즈모의 활용
총알 발사궤적 효과 만들기 - Trail Renderer
파티클 활용하기
___탄피 효과내기
___총구 화염 효과 - Muzzle Flash
___스파크와 탄흔 효과
드럼통의 폭발 효과
___Scale Factor
___Mesh Collider 활용
___드럼통의 외형 변형 - Mesh Filter
___텍스처의 변경하기 - Mesh Renderer
___폭발력 적용하기 - AddExplosionForce
사운드
___AudioListener, AudioSource 컴포넌트
___오디오 파일 임포트 및 설정
___오디오 임포트 옵션 - Load Type
___오디오 임포트 옵션 - Compression Format
___총소리 구현
___드럼통 폭발음 구현
정리

▣ 06장: 적 캐릭터 제작
유한상태머신의 정의
메카님
___적 캐릭터 3D 모델 임포트
___메카님 애니메이션으로 전환
___애니메이션 리타깃팅
___본 구조의 최적화 - 총 장착
애니메이터 컨트롤러
___메카님 애니메이션 클립 설정
___스테이트 전이와 파라미터
___루트 모션
___Root Transform Position (Y) 속성
___Root Transform Position (XZ) 속성
___Root Transform Rotation 속성
내비게이션 - 적 캐릭터의 순찰 및 추적
___내비게이션 설정 및 베이크
___NavMeshAgent 컴포넌트
적 캐릭터의 순찰 기능
___순찰 지점 생성
___스크립트 컴파일과 어셈블리 정의 파일
___순찰 로직 구현
유한상태머신 구현
___코루틴 함수
___적 캐릭터의 상태 체크
___적 캐릭터의 행동 처리
___애니메이션 동기화 - Blend Tree
___NavMeshAgent의 회전 속도
적 캐릭터의 공격 기능
___Any State 와 Transition Duration
___자동 발사 기능 구현
___재장전 기능 구현 - 레이어 분리
___적 캐릭터의 총알 제작
___메쉬로 만드는 총구 화염 - Muzzle Flash
적 캐릭터의 피격 및 혈흔 효과
___Resources 폴더
___Sub-State Machine
정리

▣ 07장: 주인공 캐릭터 피격 및 타격감 구현
타격감 구현
___주인공을 따라가는 기능 - FollowCam
___셰이크 효과
주인공 피격 및 피격 효과
___레이어 간의 충돌 감지
___Is Trigger 속성
애니메이션 속도 조절 및 오프셋 설정
불규칙적인 순찰
메시지 전달 - SendMessage
사용자 정의 이벤트 - Delegate

▣ 08장: 유니티 UI 시스템
Canvas 객체
___EventSystem 객체
___Canvas 컴포넌트
Rect Transform 컴포넌트
___앵커 프리셋
___anchoredPosition 속성
___앵커 속성
Image 컴포넌트
___Simple
___Sliced
___Tiled
___Filed
RawImage 컴포넌트
Button 컴포넌트
___Transition 속성
___Navigation
___Button Event
Text 컴포넌트
___Text Effects
Bloody Screen 효과
생명 게이지 구현
탄창 정보 UI 및 재장전 로직 구현
___탄창 UI 디자인
정리

▣ 09장: 게임 매니저
적 캐릭터의 출현 로직
___하이러키 뷰를 간결하게 유지하기
___SpawnPointGroup 생성
___사용자 정의 기즈모
___GameManager 객체 생성
싱글턴 디자인 패턴
___오브젝트 풀
___이벤트 함수의 실행 순서
정리

▣ 10장: UI 고급
적 캐릭터의 생명 게이지 구현
___Screen Space - Camera 모드
무기 교체 UI
___UI 터치 이벤트 감지
일시 정지 기능
___Canvas Group
인벤토리 UI
___인벤토리 UI 제작
___Grid Layout Group 컴포넌트
___드래그 처리
___드롭 처리
정리

▣ 11장: 데이터 저장 및 불러오기
PlayerPrefs를 활용한 데이터 저장
바이너리 파일 저장
___객체 직렬화(Object Serialization)
___OnApplicationQuit
___아이템 추가 및 삭제
___인벤토리에 아이템 로드
ScriptableObject
정리

▣ 12장: 레이캐스트 활용
레이캐스트
총알 자동 발사 로직
장애물 검출에 레이캐스트 응용
___장애물 설정
___주인공 캐릭터에 물리 엔진 적용
적 캐릭터의 지능화된 AI
___원주의 점 좌표 계산
___유니티 Editor 클래스
___적 캐릭터의 시야각 구현
카메라의 장애물 감지
___벽에 가려진 카메라의 높이 변경
___장애물에 가려진 카메라의 높이 변경
정리

▣ 13장: 내비게이션 고급 기법
동적 장애물
Off Mesh Link Generation
사용자 정의 Off Mesh Link
정리

▣ 14장: 라이트매핑 및 라이트 프로브
전역 조명
조명 모드
___Realtime 모드
___Mixed 모드
___Baked 모드
라이트매핑
___Generate Lightmap UVs 옵션
___Lightmap Static 플래그
___라이팅 뷰
___Progressive 라이트매퍼
___라이팅 뷰의 Environment
___Baked 라이트매핑
___Auto Generate 옵션
___라이트맵 베이크
___Area Light
라이트 프로브
___Light Probe Group
___Anchor Override
정리

▣ 15장: 씬 관리
Scene 분리
Scene 병합
씬 전환 시 Fade In 로직
정리
책을 마치며

top