> For the complete documentation index, see [llms.txt](https://docs.decentraland.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.decentraland.org/creator/content-creator-ko/wearables-and-emotes/emotes/creating-emotes.md).

# 이모트 만들기

Decentraland 이모트를 만드는 팁과 가이드라인.

이 문서에서는 파일 사양, Blender에서의 애니메이션 기본, 이모트를 내보내는 올바른 방법, 그리고 이를 Builder로 가져오는 방법을 다룹니다.

{% hint style="info" %}
**💡 팁**: 설치하세요 [Decentraland Tools Blender 플러그인](https://extensions.blender.org/add-ons/decentraland-tools/). 여기에는 3D 모델, 착용 아이템, 이모트를 편집하고 내보내는 데 도움이 되는 여러 유용한 기능이 포함되어 있습니다.
{% endhint %}

#### 애니메이션 사양표

| 프레임 속도      | 30 fps                |
| ----------- | --------------------- |
| 최대 길이       | 10초(300프레임)           |
| 파일당 애니메이션 수 | 1                     |
| 내보내기 형식     | .glb                  |
| 샘플링 간격      | 기본값은 1(필요한 경우 2 또는 3) |
| 최대 파일 크기    | 3MB                   |
| 최대 애니메이션 거리 | 1미터(앞/뒤, 왼쪽/오른쪽)      |
| 최대 애니메이션 높이 | 4미터                   |

애니메이션 사양에 대한 더 자세한 설명은 [**아래**](#the-animation-specifications).

### **자료**

이 문서에서는 Rig 1.0의 설정, 컨트롤, 기능을 설명합니다.

[Decentraland Blender Rig](https://github.com/decentraland/docs/tree/main/creator/images/emotes/Avatar_File.blend)

{% hint style="info" %}
Maya를 사용 중이라면 이것을 다운로드할 수 있습니다 [Maya Rig](https://github.com/decentraland/docs/tree/main/images/emotes/DCL_Maya_Rig.ma) 과 [선택기](https://github.com/decentraland/docs/tree/main/images/emotes/emoteAvatar.pkr) 제공: [SparkleStudios](https://www.sparkles.studio/) ❤️.
{% endhint %}

## **시작하기 전에**

### **프레임 속도**

시작하기 전에 프레임 속도를 확인하는 것이 중요합니다. Decentraland의 애니메이션은 반드시 30 fps여야 합니다. Rig 파일은 기본적으로 24 fps로 설정되어 있으므로 애니메이션을 시작하기 전에 30으로 변경하세요(프레임 속도가 잘못되면 애니메이션 속도에 영향을 줍니다). 해당 옵션은 아래와 같이 Format 아래의 Output Properties(프린터 아이콘)에서 찾을 수 있습니다:

![시작하기 전에 프레임 속도가 30 fps로 설정되어 있는지 확인하세요.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/framerate.png)

시작하기 전에 프레임 속도가 30 fps로 설정되어 있는지 확인하세요.

### **포즈 모드**

Blender에서 리그는 Object Mode, Edit Mode, Pose Mode의 세 가지 모드로 볼 수 있습니다. 애니메이션은 Pose Mode에서만 만들 수 있습니다(이 모드에서는 컨트롤에 색이 표시됩니다). 리그를 선택하면 오른쪽 위의 드롭다운 메뉴에서 해당 옵션을 찾을 수 있습니다.

![Pose Mode로 전환하기.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/changing_pose_mode.gif)

Pose Mode로 전환하기.

### **애니메이션 인터페이스**

리그 파일에는 전면 및 측면 뷰포트 창 두 개 외에도 아래쪽에 세 개의 창이 더 있습니다: a ***Graph Editor***, ***Dope Sheet***, 그리고 a ***Timeline***.

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

이 작업 공간이면 애니메이션을 시작하는 데 필요한 모든 것이 갖춰집니다!

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-2d729d156ebf035dc72696c43a7ffd4d5e5ec5c0%2Fworkspace.png?alt=media\&token=4698b1f5-3274-4b77-a1d1-ccbf1e0605dd)

이것들이 아래쪽 창입니다. 위쪽 창은 ***그래프 에디터,*** 가운데 창은 ***Dope Sheet,*** 그리고 아래쪽 창은 ***타임라인입니다.*** 위쪽 빨간 화살표는 ***선택 항목만 표시*** 도구를, 아래쪽 화살표는 ***자동 키잉***.

{% hint style="info" %}
**💡 힌트!**

Blender는 매우 높은 수준으로 사용자 설정이 가능하므로, 창을 추가·조정·삭제하면서 자신에게 가장 잘 맞는 레이아웃을 설정하기에도 좋은 시기입니다. 애니메이터마다 선호가 다르니, 원하는 대로 레이아웃을 편집해 보세요!
{% endhint %}

## 시작하기

#### **시작 포즈**

제공된 리그 파일에는 이미 하나의 액션이 있습니다, ***Starting\_Pose***. 모든 아바타 액션은 idle 포즈에서 시작하므로, **애니메이션을 그 포즈에서 시작하고 마지막 프레임에서도 다시 사용하는 것을 적극 권장합니다**. 이렇게 하면 Idle에서 Emote로의 전환이 더 자연스러워지고 애니메이션도 더 부드러워집니다.

{% hint style="info" %}
**💡 힌트!**

루프 애니메이션을 만들고 싶다면 Starting Pose에서 애니메이션을 시작할 필요는 없습니다. 애니메이션에서 가장 자연스러운 포즈를 자유롭게 사용하세요!\*\*
{% endhint %}

루프가 부드럽게 이어지려면 첫 번째와 마지막 키프레임이 반드시 동일해야 합니다. 예를 들어 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 밖으로 나가서는 안 됩니다.

![애니메이션 영역 참조.](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-a48e59343fbec3349689698c72254df70c4b8bca%2FAnimation_area.png?alt=media\&token=7b045431-b3e9-4da7-9278-44192dc4f5df)

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

![아바타 이동.](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-a62cdaaf09e00175618c07551c6ccefe70c6331f%2Favatar_movement.gif?alt=media\&token=2814904c-fc0f-42a0-a385-35d04ec29ba8)

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

| ![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-464566443d2a433e20fbd406280637a5e24919d1%2Fheight_right_1.png?alt=media\&token=7d1d3063-b355-4f7b-b85d-e5a771cb492f) | ![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-c2f9db3d3abc06ca18566ab68d18bfcf06dad1c9%2Fheight_right_2.png?alt=media\&token=c15c7309-0664-4ea8-9fd3-f56aa8856974) |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

| ![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-0b3314df6e0c461f99c00b0b4161a948900372d1%2Fheight_right_3.png?alt=media\&token=a1ea8ff0-1c0a-4c81-b904-d0f7179b52af) | ![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-3beefb8916d995d729c17a88cfaa374a0ca9bc35%2Fheight_wrong_1.png?alt=media\&token=599f4d9e-8581-4d8f-b081-bd44bd3e4244) |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-cdc730bf5a86baa0c44ad2736643add6bc066617%2Fheight_wrong_2.png?alt=media\&token=20de69ec-1ba2-4920-8596-147e2ca9021f)

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

| ![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-cccc86deab269b8c471e963c1fd41e07266cf359%2Fwhack-a-frog.gif?alt=media\&token=1c59407b-8719-4677-ace2-ee07006c3f96) | ![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-b4e40c0e90247b1a4786f40a2ed3149d5976c85a%2Flove-grenade.gif?alt=media\&token=1015012f-9e20-43d7-a5fb-a40decdbd5bb) |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

{% hint style="info" %}
**💡 주의!**

이 경계를 넘으면 게임플레이 문제가 생길 수 있으니 주의하세요.
{% endhint %}

## **애니메이션 만들기**

blend 파일에는 편집할 준비가 된 애니메이션 클립이 있습니다: *StartingPose\_Avatar*. 필요에 따라 해당 애니메이션 클립을 복제하고 이름을 변경하면 됩니다. 처음부터 새로 만들 필요는 없습니다!

에서 *작업 탐색* 섹션에서 다음을 클릭하기만 하면 됩니다 ***새 액션 만들기*** 버튼을 눌러 현재 애니메이션을 복제하세요. 클립 이름을 바꾸려면 텍스트를 클릭하고 다른 이름을 입력하면 됩니다.

Blender 4.4에서는 *슬롯 액션*, 이는 *작업 탐색* 이전 버전의 섹션 오른쪽에 있는 아이콘입니다. 소품이 없는 이모트를 만드는 경우에는 이것을 건드릴 필요가 없으므로 그대로 두면 됩니다. 아바타를 애니메이션할 때는 슬롯 액션이 Avatar\_Animation인지 확인하세요.

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-558ab224b6ac0639b6484a592e9cb1a14ee2c0fa%2Fduplicating_animation.gif?alt=media\&token=a39c2e59-cbec-4b4c-8db2-c416e0266b77)

기존 애니메이션을 복제하거나 다음을 클릭하여 새 애니메이션을 만드세요 ***액션 연결 해제*** 그런 다음 ***새로 만들기***.

### **애니메이션 탐색 및 삭제**

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

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-cf5ab4ab85c3c5344d1bde1da1f0dc51dd797f96%2Fdeleting_animation.gif?alt=media\&token=480a92cb-3ee1-42e5-8d5f-8e1c4718ba88)

애니메이션 탐색: F가 있는 항목은 저장되고, 0이 있는 항목은 삭제됩니다.

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

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-b763cc4adab4c8f81a7c5d21babc91943b32d10a%2Fdeleting_animation2.gif?alt=media\&token=91e09491-dcea-4dba-b378-2bf84c814260)

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

{% hint style="info" %}
**💡 힌트!**

항상 같은 애니메이션 트랙만 편집하지 마세요. 큰 변경을 하기 전에는 애니메이션을 복제해 두세요. 그러면 무엇인가를 삭제하거나 바꾼 것을 후회하더라도 백업 버전이 남아 있습니다. 지금까지의 진행 상황을 기록해 두는 좋은 방법이기도 합니다!
{% endhint %}

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-558ab224b6ac0639b6484a592e9cb1a14ee2c0fa%2Fduplicating_animation2.gif?alt=media\&token=bac6b1c0-468c-4b07-a170-d6651f89cd72)

애니메이션 클립 복제.

### **이름 짓기**

**애니메이션 이름은 대문자로 시작해야 하며, 이름이 두 단어 이상이면 단어를 \_로 구분해야 합니다.** 공백이나 특수 문자는 사용하지 마세요. 이름 예시는 다음과 같습니다:

* Snowfall
* Rainbow\_Dance
* Throw\_Money
* Talk\_To\_Hand

### **이모트 오버라이드**

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

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-948a1c8627c2ee0c84f5c9fc27d4ad669ae8a715%2F01_emote_override.gif?alt=media\&token=c7751521-e489-41ca-8089-455f71fe2048)

이를 피하려면 본이 들어 있는 모든 레이어를 선택하세요(다음에서 찾을 수 있습니다 ***Object Data Properties*** > ***Skeleton*** > ***Layers***). 그런 다음 ***포즈 모드***&#xD0C0;임라인 커서를 애니메이션의 첫 프레임에 둔 채 마우스를 ***Viewport Display***&#xC5D0; 두고 ***하나의*** 모두 선택하려면 ***Graph Editor***&#xC5D0;서 ***Eye*** 아이콘을 아마추어 채널 옆에서 두 번 클릭하여 모든 채널을 보이게 하세요. 모든 본을 선택한 상태에서 ***I*** 를 눌러 키프레임을 설정하세요. 마지막 프레임도 동일하게 하세요.

**변형 본을 선택했는지 꼭 확인하세요. 이 점은 특히 중요합니다!** 변형 본은 맨 아래 레이어에서 찾을 수 있으며 ***Viewport***.

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-a471e63b0f50b75e417fad7897d2d41b2626fa98%2Fkeyframe_bones.gif?alt=media\&token=3a4623f2-9616-4e67-9d9e-cc3ee3655ac7) 첫 프레임과 마지막 프레임의 모든 본에 키프레임을 설정하면 이모트 오버라이드를 방지할 수 있습니다.

## **애니메이션 사양**

### **애니메이션 길이**

애니메이션의 최대 길이는 **10초** 또는 **300프레임**. 첫 프레임과 마지막 프레임에서 모든 컨트롤의 속성에 키프레임을 설정하는 것을 잊지 마세요.

{% hint style="warning" %}
⚠️ Graph Editor에서 보이지 않도록 설정된 채널은 키프레임이 설정되지 않고, 삭제되지도 않으며, Action Editor에 표시되지도 않습니다. 의도적으로 그렇게 한 것이 아니라면 가시성에 특히 주의하세요.
{% endhint %}

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-24b31b5701d0890c05da348141fa35138c3d0eaf%2Fchannel_visibility.gif?alt=media\&token=c3981e88-84b6-4b7d-b52a-26eb9953ea53)

키프레임을 넣기 전에 채널을 보이게 하세요!

### **애니메이션 수**

일반 이모트(소품 없음)라면 내보낸 파일에는 애니메이션을 하나만 포함할 수 있습니다. Emotes 2.0에서는 아바타용 클립 하나와 소품용 클립 하나를 둘 수 있습니다. 작업 중 애니메이션을 복제했다면 내보내기 전에 모두 삭제하세요. 최종 버전만 남기면 됩니다. 여러 애니메이션이 필요해 작동하는 시퀀스 이모트(action start, action loop, action end)는 현재 지원되지 않습니다.

### **형식**

애니메이션은 다음 형식으로 내보내야 합니다.**GLB**. 파일에는 변형 스켈레톤과 애니메이션만 포함될 수 있습니다. **메쉬, 컨트롤 및 기타 다른 오브젝트는 내보내면 안 됩니다**. 내보내는 방법에 대한 자세한 내용은 다음에서 확인할 수 있습니다 [**아래**](#exporting).

### **샘플링**

제약은 내보낼 수 없으므로 애니메이션 클립을 내보내는 유일한 방법은 베이킹하는 것입니다. 즉, 변형 본의 위치, 회전, 크기가 애니메이션의 모든 프레임에 키프레임으로 기록됩니다. 클립이 300프레임까지처럼 너무 길면 내보낸 뒤 300개의 키프레임이 생기며, 키프레임이 많을수록 파일이 더 무거워집니다.

샘플링은 애니메이션을 최적화하는 좋은 방법입니다. 샘플링 비율은 애니메이션에서 키프레임이 얼마나 자주 베이크될지를 결정합니다. 예를 들어 샘플링 비율이 2로 설정되어 있으면 2프레임마다 키프레임이 생성된다는 뜻입니다. 샘플링 비율이 3이면 3프레임마다 키프레임이 베이크되는 식입니다. 샘플링 비율이 높을수록 파일은 더 가벼워집니다.

하지만 단점은 중요한 키프레임 일부가 사라지기 때문에(애니메이션 전체에 고르지 않게 분포되어 있기 때문) 애니메이션이 점점 덜 부드러워지기 시작한다는 점입니다. 또한 다음 점도 중요합니다 **샘플링은 애니메이션 프레임 수를 샘플링 비율로 나누는 것이 아닙니다**.

보통 **2 또는 3의 샘플링 비율** 이면 충분합니다. 이 숫자들은 품질을 해치지 않으면서 애니메이션을 최적화할 수 있습니다.

{% hint style="info" %}
**💡 힌트!**

애니메이션의 프레임 수가 샘플링 비율로 나누어진다면 좋습니다! 이는 마지막 프레임도 베이크되어 애니메이션의 끝에서 시작으로 이어지는 전환이 보존된다는 뜻입니다.
{% endhint %}

### **파일 크기**

최대 파일 크기는 **3MB**. 내보낸 뒤 파일이 그보다 크면 메쉬가 실수로 내보내지지 않았는지, 또는 애니메이션이 10초를 넘지 않았는지 확인해 보세요. 그래도 3MB를 넘는다면 샘플링 비율을 조정해 보세요. 더 높은 값일수록 최적화가 더 잘됩니다.

이모트에 추가 3D 모델이 포함되어 있다면, 해당 모델의 텍스처 크기는 1024픽셀을 넘을 수 없습니다.

## **내보내기**

내보낼 때는 아마추어와 애니메이션만 포함되길 원하므로, 아래와 같이 내보내기 전에 메쉬 표시와 아마추어 외의 모든 오브젝트를 끄세요:

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-6b440bf9c2ecf20222424f25f503f93c329b0f34%2Fmesh_visibility.gif?alt=media\&token=32ff8aa1-59fa-4988-b310-806bd4ce1397)

내보내기 전에 메쉬 표시를 끄세요!

파일에는 내보내려는 하나의 액션만 포함되어야 합니다. 리그에는 `Starting_Pose` 액션이 함께 제공되므로 [삭제하세요](#browsing-and-deleting-animations) 다른 남아 있는 액션도 함께 삭제하세요. 그렇지 않으면 내보낸 `.glb` 파일에 [파일당 하나의 애니메이션](#number-of-animations) 이라는 Decentraland의 요구사항 대신 두 클립이 들어갑니다. 편집 가능한 복사본을 `.blend` 에서 불필요한 내용을 제거하기 전에 저장하세요.

내보내려면 다음으로 이동하세요 *파일* > *내보내기* > *glTF2.0(.glb, .gltf)*

![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-b8d83737f404def3627abe723ea26fc005fdafc6%2Fexport_gltf.gif?alt=media\&token=28729ee2-391f-4608-8cad-472c7cd44434)

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

| ![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-b5ae77f9a0c99da2cb55a9cbeb8d3366a3ca7d40%2Fexport_settings.png?alt=media\&token=dbbfb36a-e438-44e1-82ce-604b77ed027d) | ![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-7dedc999a0a6f4ca60fb4638efa3aec0dd39c39a%2Fexport_settings_GIF.gif?alt=media\&token=7351252d-3661-4bb9-b477-ff43ed640d58) |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

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

| ![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-b2d89cdef462668dbd73d5eb427923fbe1946647%2Fsampling_rate.png?alt=media\&token=11f03244-4e76-40e2-8101-7012a4c6acaf) | ![](https://3980763956-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-376c2e0af4cbe87e163d87e866314419d9946477%2Fsampling_rate_GIF.gif?alt=media\&token=f94c5ee1-a1ea-4655-9b32-f5705059ff54) |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |

애니메이션 내보내기는 이것으로 끝입니다!

## 참고 자료

아직 어디서 시작해야 할지 모르겠거나 참고나 영감이 필요하다면, 도움이 될 만한 몇 가지 애니메이션 클립이 있습니다. 훌륭한 학습 자료가 될 수 있습니다!

[Idle.glb](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/idle.glb)

[Jump.glb](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/jump.glb)

[Walk.glb](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/walk.glb)

[Run.glb](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/run.glb)

[Pose\_Jump.glb](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/pose_jump.glb)

[Pose\_Spin.glb](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/pose_spin.glb)

[Spotlight.glb](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/spotlight.glb)

[Fashionista.glb](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/fashionista.glb)

[Chic.glb](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/chic.glb)

[Flag\_Emote.glb](https://github.com/decentraland/docs/tree/main/images/emotes/Flag_Emote.glb)

[Flag\_Emote.blend](https://github.com/decentraland/docs/tree/main/images/emotes/Flag_Emote_Final.blend)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.decentraland.org/creator/content-creator-ko/wearables-and-emotes/emotes/creating-emotes.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
