책 소개
소스 파일은 아래 깃허브 페이지에서 내려 받으실 수 있습니다.
(https://github.com/AcornPublishing/unity-ani-essentials)
요약
유니티를 활용해 2D와 3D 게임에서 활용할 수 있는 다양한 애니메이션 기법을 기초부터 고급 단계까지 차근차근 설명하고 있다. 유니티와 C# 스크립트에 대한 기본적인 이해만 갖추고 있다면 전체적인 내용을 무리 없이 따라올 수 있도록 쉽게 구성되어 있다. 게임 개발의 필수 요소인 애니메이션 기법을 처음 접하는 독자 또는 다양한 애니메이션 기법을 배우고 싶은 독자에게 유용한 책이다.
이 책에서 다루는 내용
■ 유니티 5가 제공하는 최신 기능 소개 - 상태 기계, 메시, 애니메이션 그래프 등
■ 스크립트 파일을 사용한 오브젝트의 시간 흐름에 따른 이동, 변환, 교체
■ 애니메이션 에디터와 커브 도구 사용
■ 유니티 씬의 외부 생성 애니메이션을 사용하기 위한 불러오기 및 설정 방법
■ 애니메이션과 C# 스크립트 간의 연결
■ 애니메이션 카메라와 파티클 시스템 생성
■ 2D와 3D 게임을 위한 정교한 스프라이트 애니메이션 생성
■ 캐릭터 애니메이션 개선을 위한 고급 작업 흐름 및 기법 적용
이 책의 대상 독자
유니티 관련 지식을 기본적으로 갖고 있으며 실시간 애니메이션 지식을 확장하고자 하는 독자를 대상으로 한다. 이 책은 독자가 유니티로 간단한 예제 정도는 쉽게 만들 수 있다는 것을 전제로 한다. 특히 메카님 같은 기능을 활용해 쉽고 효율적으로 사실적인 애니메이션을 만드는 방법을 주로 다루고 있다.
이 책의 구성
1장. '애니메이션 기초'에서는 애니메이션의 핵심 개념과 스크립트를 비롯한 유니티가 제공하는 다양한 애니메이션의 적용 사례를 소개한다. 델타 타임(delta Time)과 애니메이션 커브, 그리고 Mesh UVs 애니메이션에 관해서도 살펴본다. 또한 앞으로 소개할 내용에 관한 전반적인 개요를 주로 다룬다.
2장. '스프라이트 애니메이션'에서는 2D 애니메이션에 관해 살펴본다. 2D에서 주로 사용하는 스프라이트(Sprite) 기능과 플립 북(flip-book) 텍스처, 평면 애니메이션을 설명한다. 유니티 스프라이트 에디터, 애니메이션 프레임, 프레임률 등과 흔히 발생하는 문제의 해결 방법까지 살펴본다.
3장. '네이티브 애니메이션'에서는 애니메이션(Animation) 창과 파티클(Particle) 시스템을 사용해 2D와 3D 게임에 적용할 수 있는 좀 더 일반적인 유니티 애니메이션을 다룬다. 유용한 두 개의 실전 예제를 통해 구체적인 내용을 살펴본다. 판타지 게임에서 아주 흔히 사용하는 기법인 파티클 시스템을 만들어볼 예정이다. 카메라가 날아가며 이동하는 연출을 만들고, 먼지나 반딧불 파티클 시스템을 만든다.
4장. '메카님 비캐릭터 애니메이션'에서는 유니티의 대표 기능인 메카님(Mecanim)에 관해 살펴본다. 메카님은 주로 캐릭터와 관한 것으로 부드러운 애니메이션을 가능하게 해주는 고급 기능을 합친 형태를 말한다. 메카님을 활용해 버튼을 누르면 문이 열리는 다소 특수한 형태를 만들어볼 예정이다.
5장. '캐릭터 애니메이션의 기초'에서는 리깅 캐릭터 애니메이션을 살펴보며 실시간 인간 체형 애니메이션에 관해 다룬다. 리깅 캐릭터를 불러오는 방법과 이를 애니메이션에 최적화된 형태로 설정하는 방법에 관해서도 살펴본다.
6장. '고급 캐릭터 애니메이션'에서는 설정된 캐릭터를 유니티로 불러온 후, 플레이어가 제어하는 대로 애니메이션이 반응하도록 해볼 것이다. 이 캐릭터에 휴식 애니메이션과 이동하는 애니메이션을 지원한다.
7장. '블렌드 셰이프, IK, 무비 텍스처'에서는 표정 애니메이션이나 모프 모션에 사용하는 블렌드 셰이프(Blend Shape), 캐릭터의 팔이나 손의 위치를 조정할 때 사용하는 인버스 키네마틱(inverse kinematic), 영상 파일을 텍스처로 사용하는 무비 텍스처(Movie Texture) 등의 주제를 다룬다.
본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
목차
목차
- 1장. 애니메이션 기초
- 애니메이션의 이해
- 프레임
- 키 프레임
- 애니메이션 타입
- 강체 애니메이션
- 리그드 또는 본 기반 애니메이션
- 스프라이트 애니메이션
- 물리 기반 애니메이션
- 모프 애니메이션
- 비디오 애니메이션
- 파티클 애니메이션
- 프로그래밍 애니메이션
- 코드를 사용한 애니메이션: 물체 이동
- 일정한 애니메이션: 속도, 시간, 델타타임
- 특정 방향으로의 이동
- 애니메이션 커브를 사용한 트윈 구현
- 오브젝트를 향한 회전: 코루틴을 사용한 애니메이션
- 재질과 매핑 애니메이션
- 카메라 흔들기: 애니메이션 효과
- 요약
- 애니메이션의 이해
- 2장. 스프라이트 애니메이션
- 스프라이트: 불러오고 설정하기
- 개별 스프라이트
- 스프라이트 아틀라스
- 스프라이트를 사용한 애니메이션
- 스프라이트 애니메이션 속도 조절
- 애니메이션 반복 해제
- 잘못된 순서로 재생되는 프레임
- 요약
- 스프라이트: 불러오고 설정하기
- 3장. 네이티브 애니메이션
- 애니메이션 창: 카메라 이동 생성
- 다수의 오브젝트를 함께 애니메이션 처리하기
- 애니메이션으로부터 함수 호출
- 파티클시스템
- 반딧불 파티클 시스템
- 파티클 시스템 글로벌 속성
- 이미터 모양과 발사 강도
- 파티클 렌더러
- 파티클 속도
- 파티클 색상과 소멸
- 요약
- 4장. 메카님 비캐릭터 애니메이션
- 프로토타이핑 애셋을 포함한 씬 준비
- 버튼과 문을 위한 애니메이션 생성
- 메카님 사용하기
- 메카님 트랜지션과 파라미터
- 문 열기 메카님 그래프 생성
- 씬 상호작용 구성
- 요약
- 요약
- 5장. 캐릭터 애니메이션 기초
- 리깅 캐릭터 생성
- 리깅 캐릭터 불러오기
- 아바타와 리타기팅
- 리타기팅 애니메이션
- 루트 모션
- 모션 오프셋 교정
- 요약
- 요약
- 6장. 고급 캐릭터 애니메이션
- 제어 가능한 캐릭터 생성
- 블렌드 트리
- 차원
- 부동소수 매핑
- 블렌드 트리 애니메이션에 스크립트 적용
- 메카님 블렌드 트리를 사용한 스크립트 작성
- 메카님 블렌드 트리 테스트
- 요약
- 요약
- 7장. 블렌드 셰이프, IK, 무비 텍스처
- 블렌드 셰이프
- 인버스 키네마틱
- 무비 텍스처
- 요약