인생 유니티 교과서
도서명:인생 유니티 교과서
저자/출판사:이영호,이영훈,김태환,김현진,박원석,박현상,탁광욱/성안당
쪽수:736쪽
출판일:2020-05-15
ISBN:9788931556377
목차
Preface 7인 7색 저자 서문
Profile 저자 소개
Chapter ㆍ 1
유니티 알아보기
1 유니티 알아보기
1.1 개발 방법론
1.1-1 프로젝트 제작의 이해
1.1-2 직군
→직군의 구분과 이해
1.1-3 레고 조립식 유니티 제작 방법
→레고와 유니티 제작 방법 비교
1.2 유니티 설치하기
1.2-1 유니티 회원 가입과 설치
→유니티 회원 가입하기
→유니티 허브 다운로드 후 설치하기
→유니티 허브로 유니티 설치하기
1.3 유니티 화면 구성
1.3-1 새로운 프로젝트 생성하기
1.3-2 유니티 화면 구성 알아보기
1.3-2 유니티 기본 기능 알아보기
→기본 도형 만들기
→씬 창에서 화면 움직임 알아보기
→오브젝트 포커스
→Transform 툴 알아보기
→버텍스 스냅핑(Vertex Snapping) 알아보기
1.4 오브젝트 다루기
1.4-1 의자 만들기
→씬 만들기
→의자 앉는 부분 만들기
→의자 등받이 만들기
→의자 다리 만들기(1)
→의자 다리 만들기(2)
→의자 다리 만들기(3), (4)
1.4-2 아파트 평면도 만들기
→아파트 바닥 만들기
→아파트 발코니 만들기
→아파트 큰방 만들기
→아파트 작은방 만들기
→아파트 화장실 만들기
→아파트 베란다 만들기
→아파트 뚫린 벽면 막기
→아파트 평면도 완성
Chapter ㆍ 2
C# 스크립트 코딩
2 C# 스크립트 코딩
2.1 코딩의 특징
2.1-1 언어적인 특징
2.1-2 논리적인 특징
2.1-3 알고리즘
2.2 유니티와 C# 스크립트
2.2-1 C#이란→
2.2-2 유니티에서 코딩 준비
2.2-3 C# 스크립트의 구성
2.3 기초 문법 익히기
2.3-1 HelloWorld 출력하기
2.3-2 자료형과 변수
2.3-3 조건문 if
2.3-4 반복문 for
2.3-5 함수
→함수의 구현과 호출
→Plus 함수 구현
→지역 변수와 전역 변수
2.3-6 클래스(Class)와 객체
→클래스
→객체
2.3-7 객체지향의 특징
→추상화
→상속성
→캡슐화
→다형성
2.4 마무리
Chapter ㆍ 3
슈팅 게임 제작
3 슈팅 게임 제작
3.1 프로토타입 버전 제작
3.1-1 프로젝트 생성과 환경 설정
→슈팅 게임 프로젝트 생성하기
→제작 환경 설정하기
3.1-2 플레이어 이동 제작
→플레이어 GameObject 생성하기
→이동 스크립트 생성해 할당하기
→이동 스크립트 구현
3.1-3 총알 이동 제작
→총알 GameObject 생성하기
→이동 스크립트 생성해 할당하기
→이동 스크립트 구현
3.1-4 총알 발사 제작
→총알 발사 스크립트 만들어 할당하기
→총알 발사 스크립트 구현
3.1-5 적 이동 제작과 충돌
→적 GameObject 생성하기
→이동 스크립트 생성해 할당하기
→이동 스크립트 구현
→다른 물체와 충돌시키기
3.1-6 적 자동 생성
→Enemy를 Prefab으로 만들기
→EnemyManager 게임 오브젝트 생성하기
→EnemyManager 스크립트 생성해 할당하기
→적 생성 스크립트 구현
→적 생성 시간을 랜덤하게
3.1-7 적의 인공지능(플레이어 방향 찾기)
→30% 확률로 플레이어 방향, 나머지 확률로 아래 방향
→태어날 때 방향을 정하고 그 방향으로 계속 이동하고 싶다
3.1-8 DestroyZone과 충돌 감지
→영역 감지 GameObject 생성하기
→영역 감지 스크립트를 생성해 할당하기
→영역 감지 스크립트 구현
3.2 알파 타입 버전
3.2-1 플레이어를 알파 버전으로 업그레이드
→애셋 스토어(Asset Store)에서 사용할 애셋 다운로드하기
→프로젝트에 애셋(asset) 가져오기
→프로젝트에 해당 애셋 적용하기
3.2-2 에너미 알파 버전으로 업그레이드
→에너미에 해당 애셋 적용하기
3.2-3 총알(Bullet)을 알파 버전으로 업그레이드
→애셋 스토어에서 사용할 애셋 다운로드
→프로젝트에 애셋 가져오기
→총알에 해당 애셋 적용하기
3.2-4 폭발 효과 추가
→애셋 스토어에서 사용할 애셋 다운로드
→프로젝트에 애셋 가져오기
→물체 충돌 시에 폭발 효과 발생시키기
3.2-5 배경 추가
→애셋 스토어에서 사용할 애셋 다운로드
→프로젝트에 애셋 가져오기
→스크롤되는 배경 추가하기
→배경 게임오브젝트 제작
3.2-6 사운드 추가
3.2-7 점수 추가
→현재 점수와 최고 점수 UI를 표시하고 싶을 때
→에너미를 잡을 때마다 현재 점수를 표시하고 싶을 때
→최고 점수를 표시하고 싶을 때
→값을 저장하고 불러오기 하고 싶을 때
3.3 베타 타입 버전
3.3.1 싱글턴 디자인 패턴으로 관리자 만들기
3.3-2 오브젝트 풀(Object Pool)을 이용한 메모리 관리
→오브젝트 풀의 개념
→총알 오브젝트 풀 제작하기
→에너미 오브젝트 풀 제작하기
→리스트(List)를 사용한 오브젝트 풀 제작하기
→에너미 오브젝트 풀 리스트로 교체
3.3-3 모바일 조이스틱 입력 대응하기
→애셋 스토어에서 플러그인 다운로드해 가져오기
→모바일 조이스틱 입력 대응하기
3.3-4 PC 및 모바일 빌드
→PC 환경 빌드
→모바일 환경 빌드
Chapter ㆍ 4
FPS 게임 제작하기
4.1 프로토타입 버전
4.1-1 캐릭터 회전
4.1-2 캐릭터 이동
4.1-3 점프
4.2 무기 제작
4.2-1 투척 무기
4.2-2 발사 무기
4.3 에너미(Enemy) 제작
4.3-1 FSM 설계
4.3-2 상태 함수 구현
4.4 UI 제작
4.4-1 체력 바 UI
4.4-2 피격 효과 UI 415
4.4-3 Game Manager 제작
4.5 모델링 교체와 애니메이션
4.5-1 에너미 모델링 교체
4.5-2 에너미 애니메이션
4.5-3 플레이어 모델링 교체
4.5-4 플레이어 애니메이션
4.6 길 찾기
4.6-1 길 찾기 알고리즘
4.6-2 내비게이션 기능 적용하기
4.7 무기 모드 추가 및 효과 적용
4.7-1 스나이퍼 모드 추가
4.7-2 무기 효과 적용
4.8 옵션 UI 제작
4.8-1 옵션 UI 레이아웃 구성
4.8-2 옵션 기능 구현
4.9 로그인 화면과 비동기 씬 로드
4.9-1 로그인 화면 구성
4.9-2 로그인 기능 구성
4.9-3 비동기 씬 로딩하기
4.10 UI 디자인 레이아웃
4.10-1 유니티 UI 시스템 개념 정리
?유니티 UI 시스템 구조
?캔버스(Canvas) 속성
→앵커(Anchor)와 피벗(Pivot)
→UI 작업을 위한 준비
4.10-2 크로스헤어
4.10-3 플레이어 체력 바
4.10-4 적 체력 바
4.10-5 무기 변경 UI
4.11 그래픽 꾸미기
4.11-1 머티리얼
→PBR 렌더링 시스템
→알베도(Albedo)와 디퓨즈(Diffuse)
→PBR의 금속 성질 파라미터, 메탈릭(Metalic)
→PBR의 매끄러움 파라미터, 스무드니스(Smoothness)
→디테일을 위한 노멀 맵(Normal map)
→자체 발광 효과, 이미션(Emission)
4.11-2 파티클 시스템(Particle System)
→불꽃 이펙트 만들기
→연기 이펙트 만들기
4.11-3 라이트 맵핑(Light Mapping)
→스태틱(Static) 처리 →라이트(Light)
→스카이박스 셋팅(Skybox Setting)
→라이트맵 셋팅(Lightmapping Settings)
→라이트맵 옵션
→프로브(Probe)의 활용
4.11-4 포스트 프로세싱(Post Processing)
→패키지 매니저에서 다운로드하기 →포스트 프로세싱 셋팅하기 →안티에일리어싱(Anti-Aliasing) 효과
→앰비언트 오쿨루전(Ambient Occlusion) 효과
→블룸(Bloom) 효과
→뎁스 오브 필드(Depth Of Field) 효과 적용하기
4.11-5 씨네머신(Cinemachine)
→씨네머신의 구조 이해하기 →Playable Director 컴포넌트와 Timeline 애셋
→카메라와 씨네머신브레인(CinemachineBrain)
→버추얼 카메라(Virtual Camera)의 기본 셋팅
→버추얼 카메라 응용
→애니메이션 트랙
→액티베이션 트랙
→스크립트를 통한 제어
4.11-6 애니메이션 사용 시 주의사항(MIXAMO)
Appendix 부록 애셋 스토어와 패키지 매니저 활용
→애셋 스토어 변경 사항
→패키지 매니저 활용