07/20 플레이어, 적 캐릭터, Animator Controller

댓글 0
댓글을 작성하려면 로그인이 필요합니다.
아직 댓글이 없습니다. 첫 번째 댓글을 작성해보세요!

댓글을 작성하려면 로그인이 필요합니다.
아직 댓글이 없습니다. 첫 번째 댓글을 작성해보세요!

소리에 세 부품(음원, 스피커, 귀)이 있었듯 애니메이션에도 부품이 있습니다.
| 구분 | 역할 | 쉽게 말하면 | 예시 |
|---|---|---|---|
| 애니메이션 클립 (Animation Clip) | 오브젝트의 움직임·회전·크기 등의 시간에 따른 변화를 저장합니다. | 개별 동작 파일 | 대기, 걷기, 달리기, 공격, 점프 |
| 애니메이터 컨트롤러 (Animator Controller) | 여러 애니메이션 클립을 상태로 구성하고, 상태 전환 조건을 관리합니다. | 동작 전환 설계도 | Speed > 0이면 대기 → 걷기 |
| 애니메이터 (Animator) | 게임 오브젝트에 붙는 컴포넌트로, 컨트롤러를 실행해 실제 애니메이션을 재생합니다. | 설계도대로 동작시키는 실행기 | 플레이어 캐릭터에 컨트롤러 적용 |
| 탭 | 설정 대상 | 주요 기능 | 쉽게 말하면 |
|---|---|---|---|
| Model | 메시와 모델 구조 | 크기(Scale), 좌표축, 메시 압축, 읽기/쓰기, 노멀·탄젠트 등의 가져오기 방식 설정 | 모델의 형태를 가져오는 방법 |
| Rig | 뼈대와 리깅 | Animation Type 설정, 뼈대 구조 인식, 루트 본 지정, Avatar 생성 | 모델의 뼈대를 어떻게 사용할지 설정 |
| Animation | 모델 파일에 포함된 애니메이션 | 애니메이션 클립 가져오기, 구간 분리, 반복(Loop), Root Motion 등의 설정 | 포함된 동작을 클립으로 설정 |
| Materials | 재질과 텍스처 | 모델에 포함된 머티리얼을 가져오거나 기존 Unity 머티리얼과 연결 | 모델의 색상과 표면을 연결 |
Avatar는 모델의 실제 뼈대를 Unity가 이해하는 표준 뼈대 구조와 연결해 놓은 매핑 정보입니다.
예를 들어 모델마다 팔 뼈의 이름이 다를 수 있습니다.
| 모델의 뼈 이름 | Avatar가 해석한 의미 |
|---|---|
mixamorig_LeftArm | 왼쪽 위팔 |
Bip001_L_Hand | 왼손 |
Pelvis | 골반 |
Head | 머리 |
즉, Avatar는 캐릭터의 외형이나 애니메이션 파일이 아니라 “어떤 뼈가 어느 신체 부위인지 알려주는 번역표”에 가깝습니다.
Humanoid 캐릭터에 Avatar를 설정하면 한 캐릭터용 애니메이션을 다른 인간형 캐릭터에도 적용할 수 있습니다. 이를 리타게팅(Retargeting)이라고 합니다.
| 타입 | 용도 | Avatar |
|---|---|---|
| None | 애니메이션을 사용하지 않는 정적 모델 | 사용하지 않음 |
| Humanoid | 사람과 비슷한 뼈대를 가진 캐릭터 | 신체 뼈 매핑 및 리타기팅에 사용 |
| Generic | 동물, 몬스터, 기계 등 자유로운 뼈대 | 계층 구조와 Root Bone 중심으로 사용 |
| Legacy | Unity의 과거 애니메이션 시스템 | 일반적인 신규 프로젝트에서는 거의 사용하지 않음 |
핵심적으로 구분하면 다음과 같습니다.
FSM (유한 상태 머신)

FSM(Finite State Machine)은 객체가 가질 수 있는 상태를 미리 정하고, 조건에 따라 상태를 변경하는 구조이다.
캐릭터는 한 번에 하나의 상태만 가진다.
예시: Idle → Jump → Fall → Idle
Idle: 대기 상태Jump: 상승 상태Fall: 낙하 상태현재 객체가 무엇을 하고 있는지 나타낸다.
Idle, Run, Jump, Fall
어떤 조건에서 다른 상태로 변경되는지를 의미한다.
Idle → Jump: 점프 키 입력
Jump → Fall: Y축 속도가 0 이하
Fall → Idle: 바닥에 착지
현재 상태에서 실행할 로직이다.
Jump 상태: 위쪽으로 이동
Fall 상태: 낙하 애니메이션 실행
Blend Tree
*파라미터 값에 따라 여러 애니메이션을 부드럽게 섞어주는 기능 (Blend : 섞다, 혼합하다)

1D Blend Tree
= 하나의 값으로 애니메이션 혼합
예: Idle, Walk, Run
2D Blend Tree
= 두 개의 값으로 애니메이션 혼합
예: 앞, 뒤, 좌우 이동
FSM = 캐릭터의 큰 상태 관리
Blend Tree = 상태 내부의 세부 애니메이션 관리
Cinemachine

Cinemachine은 카메라 추적, 회전, 흔들림, 전환 등을 쉽게 구현할 수 있게 해주는 Unity 공식 카메라 패키지이다.
직접 Main Camera의 위치를 계속 계산하는 대신, Cinemachine Camera에 규칙을 설정하면 실제 카메라가 그 규칙을 따라 움직인다.
| 구성 요소 | 역할 |
|---|---|
| Main Camera | 실제 화면을 출력하는 카메라 |
| Cinemachine Brain | 어떤 Cinemachine Camera를 사용할지 결정 |
| Cinemachine Camera | 카메라의 위치, 회전, 추적 규칙 설정 |
| Tracking Target | 카메라가 따라가거나 바라볼 대상 |
| Priority | 여러 카메라 중 사용할 카메라 결정 |
| Blend | 카메라가 변경될 때 전환되는 방식 |
XR을 활용한 게임 개발 3기(유니티) 수강생입니다. 곧 수료 하지만 앞으로 이곳에 가끔 저의 개발 경험이 나 지식 기록할까 합니다. 더 나아가 이 사이트가 제 개인위키의 역할을 할 수 있으면 좋겠습니다. 한국 게임 시장을 흔들겠습니다

게임 광고 수익은 단순히 광고를 붙이는 것이 아니라, 여러 광고 네트워크를 경쟁시켜 가장 높은 수익을 만드는 구조입니다.

안녕하세요. 플밍 4기 입니다. 게임 개발을 배우기 전 네트워크 엔지니어 도메인에서 익히고 배웠던 네트워크 이론에 대한 기초 입니다. 학습에 도움이 되길 바라며 공유 드립니다.
XR을 활용한 게임 개발 3기(유니티) 수강생입니다. 곧 수료 하지만 앞으로 이곳에 가끔 저의 개발 경험이 나 지식 기록할까 합니다. 더 나아가 이 사이트가 제 개인위키의 역할을 할 수 있으면 좋겠습니다. 한국 게임 시장을 흔들겠습니다



게임 광고 수익은 단순히 광고를 붙이는 것이 아니라, 여러 광고 네트워크를 경쟁시켜 가장 높은 수익을 만드는 구조입니다.


안녕하세요. 플밍 4기 입니다. 게임 개발을 배우기 전 네트워크 엔지니어 도메인에서 익히고 배웠던 네트워크 이론에 대한 기초 입니다. 학습에 도움이 되길 바라며 공유 드립니다.