이모트 만들기
Decentraland 이모트를 만드는 팁과 가이드라인.
이 문서에서는 파일 사양, Blender에서의 애니메이션 기본, 이모트를 내보내는 올바른 방법, 그리고 이를 Builder로 가져오는 방법을 다룹니다.
애니메이션 사양표
최대 길이
10초(300프레임)
파일당 애니메이션 수
1
내보내기 형식
.glb
샘플링 간격
기본값은 1(필요한 경우 2 또는 3)
최대 파일 크기
3MB
최대 애니메이션 거리
1미터(앞/뒤, 왼쪽/오른쪽)
최대 애니메이션 높이
4미터
애니메이션 사양에 대한 더 자세한 설명은 아래.
자료
이 문서에서는 Rig 1.0의 설정, 컨트롤, 기능을 설명합니다.
시작하기 전에
프레임 속도
시작하기 전에 프레임 속도를 확인하는 것이 중요합니다. Decentraland의 애니메이션은 반드시 30 fps여야 합니다. Rig 파일은 기본적으로 24 fps로 설정되어 있으므로 애니메이션을 시작하기 전에 30으로 변경하세요(프레임 속도가 잘못되면 애니메이션 속도에 영향을 줍니다). 해당 옵션은 아래와 같이 Format 아래의 Output Properties(프린터 아이콘)에서 찾을 수 있습니다:

시작하기 전에 프레임 속도가 30 fps로 설정되어 있는지 확인하세요.
포즈 모드
Blender에서 리그는 Object Mode, Edit Mode, Pose Mode의 세 가지 모드로 볼 수 있습니다. 애니메이션은 Pose Mode에서만 만들 수 있습니다(이 모드에서는 컨트롤에 색이 표시됩니다). 리그를 선택하면 오른쪽 위의 드롭다운 메뉴에서 해당 옵션을 찾을 수 있습니다.

Pose Mode로 전환하기.
애니메이션 인터페이스
리그 파일에는 전면 및 측면 뷰포트 창 두 개 외에도 아래쪽에 세 개의 창이 더 있습니다: a Graph Editor, Dope Sheet, 그리고 a Timeline.
Graph Editor: 이 편집기에서는 선택한 컨트롤의 각 변환 속성에 대한 애니메이션 곡선을 편집할 수 있습니다. 이 곡선은 보간이 어떻게 계산되는지를 보여 주며, 원하는 애니메이션 효과를 얻기 위해 편집할 수 있습니다. 여기와 Dope Sheet 둘 다에서 선택 항목만 표시 도구가 활성화되어 있어 선택한 컨트롤과 관련된 채널만 포함됩니다. 화살표 아이콘을 클릭하면 이 기능을 켜고 끌 수 있습니다.
Dope Sheet: 여기에서 키프레임을 편집할 수 있습니다. 새 애니메이션을 만들거나 여러 개의 애니메이션 사이를 이동할 수도 있습니다. 애니메이션에 접근하려면 액션 편집기 를 선택해야 합니다. 이 옵션은 Dope Sheet 아이콘 옆 드롭다운 메뉴에 있습니다.
Timeline: 여기에서 타임라인과 재생 컨트롤을 찾을 수 있습니다. 여기에서는 자동 키잉 이 켜져 있어 컨트롤을 조작할 때마다 키프레임이 자동으로 생성됩니다. 재생 컨트롤 옆의 점을 클릭하면 언제든지 이 기능을 비활성화할 수 있습니다.
이 작업 공간이면 애니메이션을 시작하는 데 필요한 모든 것이 갖춰집니다!

이것들이 아래쪽 창입니다. 위쪽 창은 그래프 에디터, 가운데 창은 Dope Sheet, 그리고 아래쪽 창은 타임라인입니다. 위쪽 빨간 화살표는 선택 항목만 표시 도구를, 아래쪽 화살표는 자동 키잉.
시작하기
시작 포즈
제공된 리그 파일에는 이미 하나의 액션이 있습니다, Starting_Pose. 모든 아바타 액션은 idle 포즈에서 시작하므로, 애니메이션을 그 포즈에서 시작하고 마지막 프레임에서도 다시 사용하는 것을 적극 권장합니다. 이렇게 하면 Idle에서 Emote로의 전환이 더 자연스러워지고 애니메이션도 더 부드러워집니다.
루프가 부드럽게 이어지려면 첫 번째와 마지막 키프레임이 반드시 동일해야 합니다. 예를 들어 30 fps에서 4초짜리 루프는 1프레임과 121프레임이 같은 포즈여야 합니다. 조금이라도 다르면 클립이 반복될 때마다 플레이어에게 눈에 띄는 튐 현상이 보입니다.
애니메이션 영역
제공된 아바타 파일에는 다음이라는 컬렉션이 있습니다 Animation_Area_Reference. 이는 애니메이션 한계를 시각적으로 확인하는 데 도움이 되는 세 개의 오브젝트로 구성되어 있습니다: Animation_Area_Reference, Ground_Reference 과 Root_Animation_Area.
Animation_Area_Reference는 4x4 큐브이며, 이는 바운딩 박스입니다. 아바타 메쉬와 소품은 애니메이션 전체 동안 이 영역 안에 있어야 합니다. 소품은 큐브 영역 안에만 있다면 자유롭게 이동할 수 있습니다.
Ground_Reference는 애니메이션 중 바닥 관통이 있는지 확인하는 데 도움이 되도록 제공된 평면입니다. 또한 중요한 정보가 있습니다. 지름 2미터의 더 작은 원은 아바타 루트를 이동할 수 있는 영역을 정의합니다. 즉, 지면 위에서는 아바타가 앞, 뒤, 왼쪽, 오른쪽으로 각각 1미터씩만 이동할 수 있습니다.
Root_Animation_Area는 아바타 루트/무게중심(CTRL_Avatar_UpperBody 또는 Avatar_Hips)을 이동할 수 있는 영역을 정의하는 원기둥입니다. 이 원기둥의 높이는 4미터이므로, 메쉬가 바운딩 박스 밖으로 나가지 않는 한 루트는 위쪽 끝까지 이동할 수 있습니다. 아바타의 다리, 팔 및 기타 신체 부위는 원기둥 밖에 있을 수 있지만, Animation_Area_Reference 밖으로 나가서는 안 됩니다.

요약하면, 루트가 원기둥 안에 있는 한 아바타는 오른쪽, 왼쪽, 앞, 뒤로 움직일 수 있으며, 이는 네 방향 각각 1미터를 의미합니다.

높이의 경우, 아바타가 바운딩 박스 안에만 있다면 끝까지 올라갈 수 있습니다(최대 4미터). 아래에는 올바르게 처리된 아바타 높이 사례(전체 몸이 바운딩 박스 안에 있음)와 잘못 처리된 사례(메쉬가 바운딩 박스 밖에 있음)가 있습니다.





다음은 애니메이션 영역 경계 안에 있는 이모트의 몇 가지 예시입니다.


애니메이션 만들기
blend 파일에는 편집할 준비가 된 애니메이션 클립이 있습니다: StartingPose_Avatar. 필요에 따라 해당 애니메이션 클립을 복제하고 이름을 변경하면 됩니다. 처음부터 새로 만들 필요는 없습니다!
에서 작업 탐색 섹션에서 다음을 클릭하기만 하면 됩니다 새 액션 만들기 버튼을 눌러 현재 애니메이션을 복제하세요. 클립 이름을 바꾸려면 텍스트를 클릭하고 다른 이름을 입력하면 됩니다.
Blender 4.4에서는 슬롯 액션, 이는 작업 탐색 이전 버전의 섹션 오른쪽에 있는 아이콘입니다. 소품이 없는 이모트를 만드는 경우에는 이것을 건드릴 필요가 없으므로 그대로 두면 됩니다. 아바타를 애니메이션할 때는 슬롯 액션이 Avatar_Animation인지 확인하세요.

기존 애니메이션을 복제하거나 다음을 클릭하여 새 애니메이션을 만드세요 액션 연결 해제 그런 다음 새로 만들기.
애니메이션 탐색 및 삭제
Blender에서는 같은 파일 안에 여러 애니메이션 트랙을 둘 수 있습니다. Browse Action 드롭다운 메뉴를 클릭하여 이를 탐색할 수 있습니다. F(Fake User)가 있는 모든 애니메이션은 저장됩니다. 애니메이션을 삭제하려면 키보드에서 Shift를 누른 상태로 X를 클릭하세요. 그렇게 하면 애니메이션 옆에 0이 표시되며, 이는 다음에 Blender를 닫거나 파일을 다시 열 때 삭제된다는 뜻입니다.

애니메이션 탐색: F가 있는 항목은 저장되고, 0이 있는 항목은 삭제됩니다.
Blender를 다시 불러오지 않고 애니메이션을 삭제하는 또 다른 방법은 Display Mode를 View Layer에서 Blender File로 바꾸는 것입니다. Actions를 펼친 다음 원치 않는 애니메이션을 마우스 오른쪽 버튼으로 클릭하고 Delete를 선택하여 삭제하세요.

아웃라이너의 Display Mode 아래에서 Blender File을 통해 애니메이션을 직접 삭제할 수 있습니다.

애니메이션 클립 복제.
이름 짓기
애니메이션 이름은 대문자로 시작해야 하며, 이름이 두 단어 이상이면 단어를 _로 구분해야 합니다. 공백이나 특수 문자는 사용하지 마세요. 이름 예시는 다음과 같습니다:
Snowfall
Rainbow_Dance
Throw_Money
Talk_To_Hand
이모트 오버라이드
변형 본에 매개변수 중 하나에 대한 키프레임이 설정되어 있지 않으면 이모트 오버라이드가 발생합니다. 키프레임이 없으면 해당 본은 있어야 할 위치, 회전된 정도, 크기가 얼마나 되는지에 대한 정보를 갖지 못해 해당 채널이 비게 됩니다. 그 결과, 월드에서 이모트를 재생한 뒤 이전 이모트가 아직 재생 중일 때 여러분의 이모트를 트리거하면 위치, 회전, 크기 정보가 이전 이모트에 의해 덮어써져 두 이모트가 섞이게 됩니다. 의도적으로 하는 경우가 아니라면, 이는 애니메이션에 영향을 주며 때로는 재미있는 결과를 만들기도 하지만, 다른 경우에는 이모트를 완전히 망가뜨릴 수 있습니다. 아래는 이모트 오버라이드의 예시입니다.

이를 피하려면 본이 들어 있는 모든 레이어를 선택하세요(다음에서 찾을 수 있습니다 Object Data Properties > Skeleton > Layers). 그런 다음 포즈 모드타임라인 커서를 애니메이션의 첫 프레임에 둔 채 마우스를 Viewport Display에 두고 하나의 모두 선택하려면 Graph Editor에서 Eye 아이콘을 아마추어 채널 옆에서 두 번 클릭하여 모든 채널을 보이게 하세요. 모든 본을 선택한 상태에서 I 를 눌러 키프레임을 설정하세요. 마지막 프레임도 동일하게 하세요.
변형 본을 선택했는지 꼭 확인하세요. 이 점은 특히 중요합니다! 변형 본은 맨 아래 레이어에서 찾을 수 있으며 Viewport.
첫 프레임과 마지막 프레임의 모든 본에 키프레임을 설정하면 이모트 오버라이드를 방지할 수 있습니다.
애니메이션 사양
애니메이션 길이
애니메이션의 최대 길이는 10초 또는 300프레임. 첫 프레임과 마지막 프레임에서 모든 컨트롤의 속성에 키프레임을 설정하는 것을 잊지 마세요.

키프레임을 넣기 전에 채널을 보이게 하세요!
애니메이션 수
일반 이모트(소품 없음)라면 내보낸 파일에는 애니메이션을 하나만 포함할 수 있습니다. Emotes 2.0에서는 아바타용 클립 하나와 소품용 클립 하나를 둘 수 있습니다. 작업 중 애니메이션을 복제했다면 내보내기 전에 모두 삭제하세요. 최종 버전만 남기면 됩니다. 여러 애니메이션이 필요해 작동하는 시퀀스 이모트(action start, action loop, action end)는 현재 지원되지 않습니다.
형식
애니메이션은 다음 형식으로 내보내야 합니다.GLB. 파일에는 변형 스켈레톤과 애니메이션만 포함될 수 있습니다. 메쉬, 컨트롤 및 기타 다른 오브젝트는 내보내면 안 됩니다. 내보내는 방법에 대한 자세한 내용은 다음에서 확인할 수 있습니다 아래.
샘플링
제약은 내보낼 수 없으므로 애니메이션 클립을 내보내는 유일한 방법은 베이킹하는 것입니다. 즉, 변형 본의 위치, 회전, 크기가 애니메이션의 모든 프레임에 키프레임으로 기록됩니다. 클립이 300프레임까지처럼 너무 길면 내보낸 뒤 300개의 키프레임이 생기며, 키프레임이 많을수록 파일이 더 무거워집니다.
샘플링은 애니메이션을 최적화하는 좋은 방법입니다. 샘플링 비율은 애니메이션에서 키프레임이 얼마나 자주 베이크될지를 결정합니다. 예를 들어 샘플링 비율이 2로 설정되어 있으면 2프레임마다 키프레임이 생성된다는 뜻입니다. 샘플링 비율이 3이면 3프레임마다 키프레임이 베이크되는 식입니다. 샘플링 비율이 높을수록 파일은 더 가벼워집니다.
하지만 단점은 중요한 키프레임 일부가 사라지기 때문에(애니메이션 전체에 고르지 않게 분포되어 있기 때문) 애니메이션이 점점 덜 부드러워지기 시작한다는 점입니다. 또한 다음 점도 중요합니다 샘플링은 애니메이션 프레임 수를 샘플링 비율로 나누는 것이 아닙니다.
보통 2 또는 3의 샘플링 비율 이면 충분합니다. 이 숫자들은 품질을 해치지 않으면서 애니메이션을 최적화할 수 있습니다.
파일 크기
최대 파일 크기는 3MB. 내보낸 뒤 파일이 그보다 크면 메쉬가 실수로 내보내지지 않았는지, 또는 애니메이션이 10초를 넘지 않았는지 확인해 보세요. 그래도 3MB를 넘는다면 샘플링 비율을 조정해 보세요. 더 높은 값일수록 최적화가 더 잘됩니다.
이모트에 추가 3D 모델이 포함되어 있다면, 해당 모델의 텍스처 크기는 1024픽셀을 넘을 수 없습니다.
내보내기
내보낼 때는 아마추어와 애니메이션만 포함되길 원하므로, 아래와 같이 내보내기 전에 메쉬 표시와 아마추어 외의 모든 오브젝트를 끄세요:

내보내기 전에 메쉬 표시를 끄세요!
파일에는 내보내려는 하나의 액션만 포함되어야 합니다. 리그에는 Starting_Pose 액션이 함께 제공되므로 삭제하세요 다른 남아 있는 액션도 함께 삭제하세요. 그렇지 않으면 내보낸 .glb 파일에 파일당 하나의 애니메이션 이라는 Decentraland의 요구사항 대신 두 클립이 들어갑니다. 편집 가능한 복사본을 .blend 에서 불필요한 내용을 제거하기 전에 저장하세요.
내보내려면 다음으로 이동하세요 파일 > 내보내기 > glTF2.0(.glb, .gltf)

내보내기 설정에서는 Include를 펼치고 Limit to에서 Visible Objects를 켜세요. 그런 다음 Data 탭을 펼치고 Armature를 펼친 뒤 Export Deformation Bones Only를 활성화하세요.


애니메이션을 샘플링해야 한다면 Animation 탭을 펼치고 Sampling Animations를 펼친 뒤 원하는 샘플 수를 선택하세요.


애니메이션 내보내기는 이것으로 끝입니다!
참고 자료
아직 어디서 시작해야 할지 모르겠거나 참고나 영감이 필요하다면, 도움이 될 만한 몇 가지 애니메이션 클립이 있습니다. 훌륭한 학습 자료가 될 수 있습니다!
마지막 업데이트