> 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/props-and-sounds.md).

# 소품 및 사운드

이모트에 소품과 사운드를 추가하는 가이드라인.

Decentraland 이모트를 한 단계 더 끌어올리려면 소품(3D 지오메트리) 및/또는 사운드를 추가할 수 있어, 이모트를 훨씬 더 재미있고 몰입감 있게 만들 수 있습니다! 이 가이드에서는 올바르게 내보내는 데 필요한 모든 것을 확인할 수 있습니다!

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

## **기본 사항 및 제한 사항**

이모트에 소품을 추가하기 시작하려면 다음을 사용하는 것이 중요합니다 [Decentraland 템플릿 파일](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/BaseMale_Rig_1.0.blend) 여기에는 아바타용 리그와 작업이 허용된 공간 경계 안에 유지되도록 하는 Ground Reference도 포함되어 있습니다.

**현재 소품 애니메이션은 Armature/Bones 애니메이션에서만 작동하므로 \_transform 애니메이션은**\_\*\*는 허용되지 않습니다.\*\*

소품이 포함된 이모트는 하나의 단일한 *.glb* 파일(Avatar\_Armature + 애니메이션이 포함된 Props\_Armature)로 모두 함께 내보내야 합니다.

* 총 3MB를 초과할 수 없습니다.
* 소품의 총 tris는 3k를 초과할 수 없습니다.
* 소품에 사용할 수 있는 머티리얼은 최대 2개, 텍스처도 최대 2개입니다.
* 소품 아마추어의 본은 최대 62개입니다.
* 이모트에는 아바타용 애니메이션 하나와 소품용 애니메이션 하나가 있어야 합니다. *현재는 여러 애니메이션이 허용되지 않습니다.*
* 두 애니메이션(아바타와 소품)은 동일한 키프레임 길이를 가져야 합니다.
* 애니메이션은 300프레임 또는 10초를 초과할 수 없습니다.
* 공간 경계는 4제곱미터입니다. 소품과 파티클은 Avatar File에 제공된 기준 큐브 안에 있어야 합니다. 아바타 이동에 대해서는 [Ground Reference 및 Animation Area](/creator/content-creator-ko/wearables-and-emotes/emotes/creating-emotes.md#ground-reference-and-animation-area). 섹션을 확인하세요.

## **명명 규칙:**

이모트가 작동하려면 명명 규칙을 엄격히 따라야 합니다! 그렇지 않으면 빌더와 월드 모두에서 올바르게 재생되지 않습니다.

#### 아마추어 이름 규칙:

**아바타의 경우:**

`아마추어`

**소품의 경우:**

`Armature_Prop`

#### 애니메이션 이름 규칙:

**아바타의 경우:**

`AnimationName_Avatar`

* 예시: `TennisServe_Avatar`, `GunShoot_Avatar`

**소품의 경우:**

`AnimationName_Prop`

* 예시: `TennisServe_Prop`, `GunShoot_Prop`

## **시작하기**

애니메이션을 시작하기 전에 소품용 리그를 만들어야 합니다. 과정이 익숙하지 않다면 [리그 만들기](/creator/content-creator-ko/3d/create-a-rig.md) 을 확인해 어떻게 하는지에 대한 자세한 정보를 보세요.

소품 오브젝트와 아마추어의 원점이 Blender 내에서 0,0 위치에 있도록 하세요. 또한 소품 오브젝트와 아마추어에 변환을 적용하여 스케일이 1,1,1로 고정되도록 하세요. 이는 월드에서 사용되거나 애니메이션 중 소품 동작에 발생할 수 있는 잠재적 문제를 방지하는 데 매우 중요합니다.

#### 소품을 아바타 리그에 따라가게 만들기

일부 소품은 테니스 라켓처럼 손과 같은 특정 신체 부위에 연결해야 할 수 있습니다. 이는 간단히 constraint를 추가하여 할 수 있습니다. 이렇게 하려면 ***포즈 모드***, 소품 본(예: 테니스 라켓 본)을 선택한 다음 ***CTRL + Shift + C*** 를 키보드에서 누른 후 ***Child Of*** 를 선택하거나 ***뼈 제약 속성*** 탭을 클릭한 다음 드롭다운 메뉴에서 ***Child Of***.

*다음을 눌러 constraint를 추가하세요 `Ctrl + Shift + C` 를 키보드에서 누르세요.*

그런 다음 ***대상***, 아바타 아마추어를 선택한 다음 ***뼈*** 소품이 따라가길 원하는 본을 선택하세요. 소품의 원래 위치를 유지하려면 constraint를 추가한 후 ***Set Inverse*** 를 클릭하세요. influence가 1이면 소품이 선택된 본을 완전히 따라가고, 0이면 constraint가 비활성화됩니다. 애니메이션 전체에서 켜고 끄기 위해 influence에 키프레임을 설정할 수 있습니다. 그렇게 하려면 커서가 ***Influence***.

***Chlid of** constraint 메뉴 위에 있을 때 I를 누르면 됩니다. influence에 키프레임을 설정해 켜고 끄세요.*

{% hint style="info" %}
**💡애니메이션 팁!** 슬라이더로 Influence를 끄면 소품이 이전 위치를 유지하지 못해 애니메이션을 부드럽게 유지하기 어렵습니다. 위치를 수동으로 고쳐야 하는 일을 피하려면 슬라이더 대신 Influence 옆의 X를 클릭하고, 거기에 키프레임 하나와 모든 transform 속성에 또 다른 키프레임을 설정하세요. 이렇게 하면 Influence가 켜져 있을 때와 같은 위치를 소품이 유지합니다!
{% endhint %}

{% hint style="info" %}
**💡애니메이션 팁**

소품을 처음부터 보이게 두지 마세요! 곧 일어날 일을 미리 보여 주거나 갑작스러운 전환을 피하려면, 애니메이션을 소품 스케일을 0.001로 줄인 상태로 시작하고, 보이게 하고 싶을 때만 1로 바꾸세요. 동작이 끝날 때 다시 0으로 줄이는 것도 잊지 마세요. 이렇게 하면 전환이 훨씬 더 부드럽고 멋지게 됩니다!
{% endhint %}

### 애니메이션 슬롯

Blender 4.4에는 새로운 기능인 애니메이션 슬롯이 도입되었습니다. Blender 문서에 따르면, “slots의 목적은 action이 여러 데이터 블록의 서로 다른 애니메이션 데이터를 저장할 수 있도록 하는 것입니다”. 한마디로 슬롯은 여러 대상의 애니메이션을 같은 Action에 저장할 수 있게 해줍니다. 이것이 Emotes 2.0에 어떤 영향을 줄까요?

Blender 4.4의 새로운 기능: 애니메이션 슬롯.

아바타와 소품이 같은 액션 클립을 공유하는 것은 가능하지만, Emotes 2.0에 관련된 명명 규칙과 애니메이션 클립 수 때문에 작동하지 않습니다. 따라서 작업 순서는 다음과 같습니다:

1. 아바타용 애니메이션 클립을 만들거나 제공된 것을 이름 바꾸세요(***Starting\_Pose***). 이미 애니메이션 슬롯이 있지만, 그대로 사용해도 됩니다(***Avatar\_Animation***) 또는 새로 만드세요.
2. 애니메이션 클립 이름 바꾸기 ***AnimationName\_Avatar***
3. 소품용 애니메이션 클립을 만들고 이름을 바꾸세요 ***AnimationName\_Prop***
4. 다음을 클릭하세요 ***새로 만들기*** 버튼을 눌러 그에 대한 애니메이션 슬롯을 만드세요(자동으로 다음 이름이 할당됩니다: ***Armature\_Prop***)
5. 이전 Blender 버전에서 하던 것처럼 애니메이션을 만드세요.

소품 애니메이션을 위한 액션 클립과 슬롯 만들기.

## **NLA 트랙**

모든 애니메이션이 내보내지려면 클립을 NLA 트랙에 추가해야 합니다. 아바타용 애니메이션 클립 하나와 소품용 애니메이션 클립 하나만 있는지 확인하세요, **두 클립은 정확히 같은 프레임 수를 가져야 합니다.**

에서 ***오브젝트 모드***, 아바타 아마추어를 선택한 다음 ***포즈 모드***, Browse Action 메뉴에서 해당 애니메이션 클립을 선택한 다음 ***액션*** 을 클릭하고 그다음 ***Push Down*** 옵션을 제공합니다.

그런 다음 다시 ***오브젝트 모드***&#xB85C; 바꾸고, 소품 아마추어를 선택한 뒤 ***포즈 모드***, Browse Action 메뉴에서 해당 애니메이션 클립을 선택한 다음 ***액션*** 을 클릭하고 그다음 ***Push Down*** 옵션을 제공합니다.

액션을 NLA 트랙으로 내리는 중.

{% hint style="warning" %}
⚠️ 액션을 내릴 때 주의하세요. 해당 애니메이션과 함께 원하는 아마추어를 선택했는지 확인하세요. 다른 아마추어를 선택하기 전에 단순히 애니메이션만 바꾸고 내리지 마세요. 그렇지 않으면 한 아마추어에 두 개의 액션이 할당되고 다른 쪽에는 아무것도 할당되지 않게 됩니다.
{% endhint %}

NLA 트랙은 다음과 같아야 합니다: 각 아마추어마다 애니메이션 하나씩.

{% hint style="info" %}
**🔥 최적화 팁**

**이 단계 전에 반드시 프로젝트를 백업하세요.**

소품에 서로 다른 오브젝트가 있다면 하나의 메쉬로 합칠 수 있습니다. 오브젝트를 선택한 뒤 단축키 ctrl + J를 누르기만 하면 됩니다.

이렇게 하면 게임에서 드로우 콜을 줄여 이모트의 성능을 높이는 데 도움이 됩니다.

다만 이것은 파티클에는 적용되지 않는다는 점을 기억하세요.

*오브젝트를 선택하고 `Ctrl+J` 를 눌러 합치세요.*
{% endhint %}

## **내보내기**

Emotes 2.0은 일반 이모트와 같은 방식으로 내보내집니다. 아바타 아마추어, 소품 아마추어, 소품 메쉬만 보이도록 하고 나머지는 모두 숨기세요.

내보내기 시 아바타 아마추어, 소품 아마추어, 소품 메쉬만 보이게 하세요.

내보내려면 File > Export > glTF2.0 (.glb, .gltf)로 이동하세요

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

|   |   |
| - | - |

Export를 누르면 끝입니다!

## **이모트에 오디오 추가하기**

### 오디오 클립의 형식 및 제한 사항

* 이모트용 사운드를 내보내는 올바른 형식은 `.mp3` 과 `.ogg`.
* 오디오 클립은 이모트와 동일한 길이여야 합니다.
* 오디오 자체에는 크기 제한이 없지만, 소품과 사운드가 포함된 이모트는 3MB를 넘을 수 없습니다.

{% hint style="info" %}
**📔 참고**: 이모트에 사운드(mp3 또는 ogg)가 있으면 .glb와 함께 zip으로 압축해야 합니다. 그 다음 .zip 파일을 빌더에 드래그 앤 드롭하세요. 자세한 내용은 여기에서 확인할 수 있습니다: [사운드가 있는 이모트 업로드](/creator/content-creator-ko/wearables-and-emotes/manage-collections/uploading-emotes.md#uploading-emotes-using-a-zip-file)
{% endhint %}

{% hint style="info" %}
**💡 주의!** 이모트에 사용되는 오디오 클립은 반드시 원본 IP(Intellectual Property)여야 하며, 복제 권리를 보유하고 다음을 따라야 한다는 점을 고려하세요 [콘텐츠 정책](https://decentraland.org/content/)기준.
{% endhint %}

### 사운드 편집

이모트에 사운드를 추가하는 방법은 여러 가지가 있습니다:

1. **Blender에서 직접 사운드 편집하기**

이모트에 사운드를 추가하는 한 가지 방법은 Blender가 제공하는 비디오 시퀀서 편집기를 사용하는 것입니다.

사운드 추가를 시작하려면 *Editor Type> Video Sequencer.*

사운드를 채널 인터페이스로 드래그 앤 드롭하세요.

다음 단축키를 누르세요 `N` 파형 표시, 사운드를 모노로 만들기, 볼륨 변경 등 사운드를 다루기 위한 더 많은 옵션을 보려면.

{% hint style="info" %}
페이드 인/아웃을 원하면 볼륨 속성에 0에서 1로, 그리고 반대로 키프레임을 추가하면 됩니다.
{% endhint %}

사운드 편집을 마쳤다면 다음으로 이동해 내보낼 수 있습니다 *Render> Render Audio*. 내보내기 옵션에서 다음을 선택해야 합니다 `.mp3` 또는 `.ogg` 형식을 *Container* 섹션에서 그런 다음 *Mixdown*. **프레임 범위 내의 오디오만 내보내집니다.**

2. **애니메이션을 렌더링하고 사운드 편집 소프트웨어로 사운드 추가하기**

Blender에서 직접 사운드를 편집하는 것은 편리할 수 있지만, 이 소프트웨어는 주로 사운드 편집에 초점을 맞추지 않았기 때문에 유연성이 높지 않습니다. 사용할 수 있는 도구도 매우 기본적입니다. 사운드에 더 전문적인 느낌을 더하고 싶다면, 전용 사운드 편집 소프트웨어를 사용하는 것을 권장합니다.

사용할 수 있는 소프트웨어 옵션은 여러 가지가 있습니다. 예를 들면 [Audacity](https://www.audacityteam.org/) (무료 및 오픈소스), Adobe Audition, Ableton Live, 또는 ProTools 등이 있습니다. 전용 사운드 편집 소프트웨어를 사용하면 더 넓은 범위의 도구, 기능, 사운드 효과를 활용할 수 있어 사운드를 향상시키고 더 전문적으로 만들 수 있습니다.

이모트를 렌더링하려면 Blender 씬에 카메라를 추가하고, 나중에 사운드를 추가할 때 좋은 참고가 될 수 있도록 모든 요소를 최대한 선명하게 볼 수 있게 배치하면 됩니다.

이모트를 렌더링할 때는 이모트의 프레임 범위만 포함하고 그 이상은 포함하지 않는 것이 중요합니다. 필요에 맞는 화면 비율을 선택하고, 비디오 또는 이미지 시퀀스를 저장할 출력 폴더를 선택하세요.

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

*렌더링하기 전에 반드시 낮은 샘플링으로 렌더링해 렌더링 시간을 절약하세요!*
{% endhint %}

이 단계가 완료되면, 비디오를 참고 자료로 사용해 선호하는 사운드 편집 소프트웨어로 해당 사운드를 만드세요. **비디오 시퀀스가 애니메이션의 초당 30프레임(fps) 프레임 속도와 일치하는지 확인하세요**


---

# 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/props-and-sounds.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.
