1. Tutorial Series
2. Project Creation & FBX Download
빈 프로젝트 생성
https://wiki.unrealengine.com/File:ThirdPerson_FBX.zip에서 파일 다운로드
3. FBX Importing & Using Skeletons
기본 계층구조가 같은 스켈레톤은 하나의 스켈레톤 애니메이션을 만들어도 같은 계층구조의 스켈레톤으로 호환 가능
SK_Mannequin 임포트
4. Intro to Persona
5. Setting Up Inputs
키 입력 설정 : 메뉴-편집(Edit)-프로젝트 세팅-엔진-입력
Bindings에서 Axis Mapping에서 새로 추가하여 MoveForward로 이름을 정한다. Moveforward 아래에 총 5개의 키 입력을 두고 w, s, 위, 아래, 게임패드 왼쪽 y 추가. 앞으로 갈 때는 1, 뒤로 갈 때는 -1
Action Mappings 에서 스페이스바를 점프로 설정, 마우스 클릭을 펀치로
6. Basic Character Material
7. Blend Space
블렌드 스페이스 : 여러 애니메이션이 적용될 때 애니메이션과 애니메이션 사이를 연결하는 것
Animations 폴더에서 우클릭 - 애니메이션 - 블랜드 스페이스 1D (1차원)
Axis Settings에서 네임 Speed, 최소 0, 최대 375
오른쪽 에셋 브라우저에서 각각 Idle, Walk, Run을 가운데 하단 그래프에 배치
8. Intro to Animation Blueprints
Character 폴더에서 우클릭 - 애니메이션-애니메이션 블루프린트
9. Intro to State Machines
스테이트 머신 : 모든 행동의 현재 상태를 추적하는 프로세스. 캐릭터의 현재 행동을 보여주는 그래프
Idle_Walk_Run, Jump Start, Jump Loop, Jump End 를 엮는 그래프
10. Building the AnimGraph
스테이트머신을 만들것
애니메이션 블루프린트를 열고 에님 그래프 탭에서 우클릭-스테이트머신 추가
스테이트머신의 출력과 최종 애니메이션 포즈의 result 연결
스테이트머신 이름을 Locomotion으로 바꾸고 더블클릭하여 편집으로 들어감
Idle_Walk_Run 스테이트
- Locomotion에서 우클릭하여 스테이트 추가
- 추가된 스테이트 이름을 Idle_Walk_Run으로 변경하고 더블클릭하여 편집모드로 들어감
- 에셋브라우저에서 Idle_Walk_RUN 블렌드 스페이스를 드래그하여 그래프에 추가
- 포즈를 Result에 연결
- 스피드를 우클릭하여 변수로 승격
JumpStart 스테이트
- Locomotion으로 돌아와서 우클릭-스테이트 추가, 이름은 JumpStart
- JumpState더블클릭하여 들어가서 에셋브라우저의 JumpStart 애니메이션을 가져와 Result에 연결
- Locomotion으로 돌아와 Idle_Walk_Run과 JumpStart사이의 트랜지션 룰을 더블클릭
- 결과 우클릭하여 변수로 승격
- 변수 이름을 IsInAir로 바꿈
JumpLoop 스테이트
- Locomotion으로 돌아와서 우클릭-스테이트 추가. 이름은 JumpLoop
- JumpLoop더블클릭하여 들어가서 에셋브라우저의 JumpLoop애니메이션을 가져와 Result에 연결
- Locomotion으로 돌아와 JumpStart와 JumpLoop사이의 트랜지션 룰을 더블클릭
- 우클릭- Time Remaining Ratio 선택
- Time Remaining의 Return Value를 < Float 함수의 입력으로, 함수의 출력을 결과에 입력
- <Float 함수의 데이터는 0.1
JumpEnd 스테이트
- Locomotion으로 돌아와서 우클릭-스테이트 추가. 이름은 JumpEnd
- JumpEnd더블클릭하여 들어가서 에셋브라우저의 JumpEnd애니메이션을 가져와 Result에 연결
- Locomotion으로 돌아와 JumpLoop와 JumpEnd사이의 트랜지션 룰을 더블클릭
- IsInAir 변수를 Get으로 가져오고 Not 불리언 함수로 연결, 출력을 결과에 연결
- Locomotion으로 돌아와서 JumpEnd와 Idle_Walk_Run을 연결
- 트랜지션을 더블클릭
- 우클릭 - Time Remaining ratio - < Float - 결과에 연결
11. Animation BP EventGraph
12. Character BP Components
Character 폴더에서 새 블루프린트 클래스를 만든다. 부모 클래스를 캐릭터로 설정한다.
컴포넌트 섹션에서 Mesh를 선택하고 Mesh에 스켈레탈 메시 추가
Animation에서 Anim Class를 CharacterAnimBP로
컴포넌트 추가에서 Spring Arm 추가 : 좁은 지역에 있을 때 카메라가 자동으로 캐릭터에 붙는다
SpringArm의 디테일 패널에서 User Pawn Control Rotation 체크하여 카메라를 마우스로 회전할 수 있게 한다.
컴포넌트 추가에서 Camera 추가
상단 툴바에서 클래스 디폴트를 클릭하고, Pawn에서 Use Controller Rotation Yaw를 언체크
컴포넌트의 Character Movement를 클릭하고 디테일패널에서 Orient Rotation to Movement를 체크. 캐릭터가 움직임에 맞게 회전하게 됨. 이는 Use Controller Rotation Yaw가 언체크 되어야만 적용됨
13. Character Keyboard & Mouse Controls
캐릭터 블루프린트 - 이벤트 그래프
14. Game Mode & Testing
Character 폴더에서 새 블루프린트 클래스 생성 - 부모클래스는 게임 모드. 이름을 MyGame으로 변경
MyGame 블루프린트를 열고 클래스 디폴트 선택. 우측 디테일 패널 - Classes - Default Pawn Class를 Character BP로 선택
레벨뷰로 돌아와서 툴바의 세팅 - 월드 세팅 클릭. 우측 월드 세팅 패널에서 GameModeOverride를 방금 만든 MyGame으로 바꿈 -> 현제 레벨에만 적용됨
전체 프로젝트에 적용하려면 툴바의 세팅- 프로젝트 세팅 클릭. 맵 & 모드에서 Default Modes - Default GameMode를 MyGame으로 설정
'공부 > 게임' 카테고리의 다른 글
언리얼 엔진4 튜토리얼 - Blueprint Quickshot (0) | 2017.11.24 |
---|---|
언리얼 엔진4 튜토리얼 - Intro to Blueprints (0) | 2017.11.21 |
언리얼 엔진4 튜토리얼 - Intro to Level Creation (0) | 2017.11.10 |
언리얼 엔진4 튜토리얼 - Intro to the Editor (0) | 2017.11.10 |
언리얼엔진 (0) | 2017.11.03 |