Naming Animations
DreamCraft Standards — Naming Convention
프리픽스 (에셋 타입)
고정 식별자 (캐릭터 / 액션)
가변 세그먼트 (상태 / 장비)
서픽스 (방향 / 변형)
💡 세그먼트는 가변
상태·장비 세그먼트는 해당 없으면 생략 가능. 빈 자리를
None 등으로 채우지 않는다.AS_PlayerBot_Unarmed_Idle ← 장비 없으면 장비 세그먼트 생략세그먼트 상세 (예시)
① 캐릭터 — 누구의 애니메이션인가
캐릭터 고유명 또는 종류명. 전용이면 구체적으로, 여러 캐릭터가 공유하면 범용적으로.
✓ PlayerBot ✓ Goblin ✓ WorkerNPC ✓ Humanoid
✕ Char01 ✕ Enemy ← 너무 모호함
② 상태 — 캐릭터가 어떤 상태인가
해당 없으면 생략. 전투/비전투 같은 큰 분기에 사용.
③ 장비 — 뭘 들고 있는가
범용 타입명으로 작성. 전투 무기와 도구를 구분하지 않고 같은 계층에서 관리.
💡 전투 무기 vs 도구
Rifle이든 Pickaxe든 동일한 "장비" 세그먼트로 취급. 용도별로 폴더는 나눌 수 있지만 네이밍 규칙은 같다.
④ 액션 — 무슨 동작을 하는가
동작의 핵심을 짧고 명확하게. 루프/전환 표기는 액션 뒤에 붙인다.
기본 이동
Idle대기
Walk걷기
Run달리기
Sprint전력질주
Jump점프
Fall낙하
Land착지
Dodge회피
전투
Attack공격
Fire사격
Reload재장전
Aim조준
Block방어
Hit피격
Death사망
Equip장비 장착
Unequip장비 해제
서바이벌 / 크래프팅
Mine채굴
Chop벌목
Gather수집
Build건설
Place설치
Craft제작
Terraform테라포밍
상호작용
Interact상호작용
Pickup줍기
Throw던지기
Use사용
방향 표기
⑤ 방향 — FBRL 체계
Forward, Backward, Right, Left의 첫 글자. 대각은 두 글자 조합.
| 표기 | 방향 | 비고 |
|---|---|---|
_F |
앞 (Forward) | |
_B |
뒤 (Backward) | |
_R |
오른쪽 (Right) | |
_L |
왼쪽 (Left) | |
_FL |
앞왼 (Forward-Left) | 8방향 블렌드 스페이스용 |
_FR |
앞오른 (Forward-Right) | 8방향 블렌드 스페이스용 |
_BL |
뒤왼 (Backward-Left) | 8방향 블렌드 스페이스용 |
_BR |
뒤오른 (Backward-Right) | 8방향 블렌드 스페이스용 |
⚠ 텍스처 서픽스와 겹침 주의
_F, _R 등은 텍스처에서 Flow Map, Roughness로도 쓰인다. 에셋 타입 프리픽스(AS_ vs T_)로 구분되므로 실제 충돌은 없지만, 혼동 가능성은 인지해둘 것.루프 & 전환 표기
루프 사이클
반복 구간이 있는 애니메이션은
_Start, _Loop, _Stop으로 분리.AS_PlayerBot_Armed_Rifle_Run_Start
AS_PlayerBot_Armed_Rifle_Run_Loop
AS_PlayerBot_Armed_Rifle_Run_Stop
전환 (Transition)
두 액션 사이의 전환은
_to_로 연결. 소문자 to를 써서 액션 명과 시각적으로 분리.AS_PlayerBot_Armed_Rifle_Run_to_Walk
AS_PlayerBot_Unarmed_Idle_to_Run
💡 방향 + 루프가 동시에 필요하면?
액션 → 루프표기 → 방향 순서.
AS_PlayerBot_Armed_Rifle_Run_Loop_FL레이어 표기
바디 파트 / 블렌딩 서픽스
풀바디가 아닌 부분 애니메이션이나 애디티브 블렌딩용 서픽스. 맨 끝에 붙인다.
_Upper
상체만
_Lower
하체만
_Additive
애디티브 블렌딩
AM_PlayerBot_Armed_Rifle_Reload_Upper ← 달리면서 상체만 재장전
AS_PlayerBot_Hit_F_Additive ← 앞에서 피격, 애디티브
변형 넘버링
같은 동작의 랜덤 변형
넘버를 맨 끝에 붙이며, 제로패딩 2자리 사용.
AS_PlayerBot_Unarmed_Hit_01
AS_PlayerBot_Unarmed_Hit_02
AS_PlayerBot_Unarmed_Hit_03
💡 방향 + 넘버가 동시에 필요하면?
방향 먼저, 넘버 마지막.
AS_PlayerBot_Unarmed_Hit_F_01관련 에셋 네이밍
블렌드 스페이스 ↔ 시퀀스 이름 일치
BS의 BaseName과 내부 AS들의 공통 부분을 맞춘다.
▼ 블렌드 스페이스
BS_PlayerBot_Armed_Rifle_Locomotion
▼ 내부 시퀀스들
AS_PlayerBot_Armed_Rifle_Idle
AS_PlayerBot_Armed_Rifle_Walk_F
AS_PlayerBot_Armed_Rifle_Run_F
애니메이션 에셋 프리픽스 요약
AS_
애니메이션 시퀀스
Animation Sequence
AM_
애님 몽타주
Anim Montage
BS_
블렌드 스페이스
Blend Space
ABP_
애니메이션 블루프린트
Animation Blueprint
CR_
컨트롤 릭
Control Rig
SKEL_
스켈레톤
Skeleton
AN_
애님 노티파이
Anim Notify — AN_Footstep, AN_WeaponSwing
비캐릭터 애니메이션 (오브젝트 / 환경)
캐릭터가 아닌 오브젝트는 훨씬 단순하다
상태·장비·방향 세그먼트가 거의 필요 없다. 오브젝트명 + 액션만으로 충분한 경우가 대부분.
건물 / 구조물
Open열림
Close닫힘
Activate작동
Deactivate정지
Break파괴
Collapse붕괴
환경 / 프롭
Spin회전
Sway흔들림
Bounce튕김
Float떠다님
Grow성장
Shrink축소
▼ 건물 / 구조물
AS_Door_Open
AS_Door_Close
AS_Gate_Open_Loop
AS_Drawbridge_Activate
AS_Wall_Wood_Break_01
AS_Wall_Stone_Collapse
▼ 환경 / 프롭
AS_Windmill_Spin_Loop
AS_Chest_Open_01
AS_Flag_Sway_Loop
AS_Crystal_Float_Loop
AS_Crop_Wheat_Grow
💡 재질/종류 구분이 필요하면 Descriptor 하나만 추가
AS_Wall_Wood_Break vs AS_Wall_Stone_Break — 캐릭터처럼 깊어질 일이 거의 없으니 최대 4세그먼트 이내로 유지.종합 예시
플레이어 — 전투
AS_PlayerBot_Armed_Rifle_Idle_Loop
AS_PlayerBot_Armed_Rifle_Run_F
AS_PlayerBot_Armed_Rifle_Fire
AM_PlayerBot_Armed_Rifle_Reload_Upper
AS_PlayerBot_Armed_Sword_Attack_01
AS_PlayerBot_Armed_Sword_Attack_02
플레이어 — 비무장 / 서바이벌
AS_PlayerBot_Unarmed_Idle_Loop
AS_PlayerBot_Unarmed_Run_FL
AS_PlayerBot_Unarmed_Gather
AS_PlayerBot_Armed_Pickaxe_Mine_Loop
AS_PlayerBot_Armed_Hammer_Build
플레이어 — 전환 / 특수
AS_PlayerBot_Armed_Rifle_Run_to_Walk
AS_PlayerBot_Unarmed_Idle_to_Run
AS_PlayerBot_Death_F_01
AS_PlayerBot_Hit_B_Additive
NPC / 몬스터
AS_Goblin_Armed_Club_Attack_01
AS_Goblin_Idle_Loop
AS_Goblin_Death
BS_Goblin_Locomotion
오브젝트 / 환경
AS_Door_Open
AS_Chest_Open_01
AS_Wall_Wood_Break
AS_Windmill_Spin_Loop
AS_Flag_Sway_Loop
서픽스 순서 정리
여러 서픽스가 겹칠 때 붙이는 순서
액션에 가까운 것부터 → 바깥으로.
최대 조합 예시:
AS_PlayerBot_Armed_Rifle_Run_Loop_FL_Upper_01
⚠ 이름이 이렇게 길어진다면 — 줄이지 말고, 분리하라
세그먼트가 많다 = 하나의 파일이 너무 많은 역할을 담당하려 한다는 신호. 이름을 줄이는 게 아니라 Unreal의 시스템(BS, ABP, AM)으로 역할을 분리해야 한다.
| 과도한 세그먼트 | 처리해야 할 주체 |
|---|---|
_FL 방향 |
BlendSpace — 방향 블렌딩 |
_Upper 레이어 |
ABP — Layered Blend Per Bone |
_01 변형 |
달리기 등에 랜덤 변형이 필요한 경우는 드묾. 필요 시에만. |
✕ 하나에 다 담으려 하면
AS_PlayerBot_Armed_Rifle_Run_Loop_FL_Upper_01
✓ 역할별로 분리하면
AS_PlayerBot_Armed_Rifle_Run_Loop_F ← 개별 시퀀스
BS_PlayerBot_Armed_Rifle_Locomotion ← 방향 블렌딩
AM_PlayerBot_Armed_Rifle_Reload_Upper ← 상체 몽타주
ABP_PlayerBot ← 레이어 합성
💡 판단 기준
세그먼트가 5개를 넘기면 멈추고 생각할 것: "이걸 시퀀스 하나가 해야 하나, 시스템으로 분리해야 하나?"
No comments to display
No comments to display