> 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-pt/wearables-e-emotes/emotes/particles-in-emotes.md).

# Particles em Emotes

Emotes 2.0 podem ter sons e props, mas você sabia que também é possível usar partículas? Elas podem ser muito divertidas e adicionar aquele brilho visual extra! E também podem acelerar o processo de animação.

{% hint style="info" %}
**💡 Dica**: Instale o [plugin Decentraland Tools para Blender](https://extensions.blender.org/add-ons/decentraland-tools/). Ele inclui várias funções úteis para ajudar você a editar e exportar modelos 3D, wearables e emotes.
{% endhint %}

Mas, como animação de objetos e sistemas de partículas não são suportados em Emotes 2.0, precisamos converter essas partículas em um Armature (que é suportado) para adicioná-las a emotes. Vamos usar um add-on do Blender desenvolvido pela Content Team da Foundation para esse processo, que pode ser baixado no link abaixo.

Use o [Addon Particles to Bones para Blender](https://github.com/decentraland/docs/blob/main/creator/images/emotes/particle_system_to_bone_animation.py) para começar!

![](/files/934e75bc8efa2ba8d953dfe630ca5f2ab023858a) ![](/files/8bacca226658537df56937fb929584c373294ef1)

O processo de adicionar partículas ao seu emote envolverá duas etapas; você pode seguir as orientações junto com estes vídeos:

* **Convertendo partículas em Armature**

[![Video Preview](https://i.vimeocdn.com/video/1803452887-82f74713a8f16df8c3618654f539cfddf78cb1f9dfac951d99d340004ac26ad6-d_590x332)](https://vz-8a0704eb-552.b-cdn.net/bb51a195-4a80-48d3-badd-0bfe6cc9e3b3/playlist.m3u8)

* **Mesclando o Armature de partículas ao Armature do prop**

[![Video Preview](https://i.vimeocdn.com/video/1803464351-0e8bf5158cb87707397a547948f99278b1af45d7669622887a43c3bd9340c064-d_590x332)](https://vz-8a0704eb-552.b-cdn.net/9f512c34-ae83-42fe-a858-165ccea6d0c5/playlist.m3u8)

{% hint style="info" %}
**Atenção!**

⚠️ Criar um sistema de partículas não será coberto nesta documentação. O objetivo é ajudar você a implementá-lo no seu emote.
{% endhint %}

## Convertendo Partículas em Armature

Como mencionado anteriormente, Emotes 2.0 não suportam animação de objetos nem qualquer forma de sistema de partículas. É por isso que precisamos converter as partículas em um Armature.

Para começar, você precisará de um sistema de partículas funcional e do add-on. O sistema de partículas mostrado abaixo é bem simples; é apenas um exemplo para mostrar como o add-on funciona. Certifique-se de que o seu sistema de partículas corresponda às animações do seu emote para um resultado melhor.

![](/files/8d91137c112f168a6231d1e512fec4eae47760fc)

*Sistema de partículas simples.*

Em seguida, faça o download e instale o add-on. Para isso, vá para Edit > Preferences > Add-ons e clique em Install para procurar o arquivo no seu computador.

![](/files/59d05e42de047e14951c77398f569ecafbfb11ab)

*Clique em Edit > Preferences.*

![](/files/226ba5fc50cf44b374d767cd164dab4930ced33c)

*Selecione Add-ons à direita e clique em Install.*

Depois disso, clique na caixa de seleção para habilitá-lo. Uma aba chamada Converter aparecerá no lado direito do Viewport.

![](/files/0c81a1df8892e13769ace52560369e46a3b6c01c)

*Clique na caixa de seleção para habilitar o add-on.*

![](/files/07eb8c9a723efc1c8817c0026f7e0c1bad017749)

*Você encontrará a aba Converter à direita do Viewport.*

Em seguida, selecione o objeto, vá para a aba Converter, renomeie a Output Collection como quiser, defina Start e End Frames e clique em Particle System to Armature Converter, como mostrado abaixo.

![](/files/81dda15fdf1fdf293b103d2cbb220c6cd293f4e6)

Você perceberá que uma Collection foi criada no Outliner, com o Armature de partículas. Também foi criado um animation clip, por meio do baking de todos os movimentos de cada objeto.

![](/files/917e3068b634bd7f2ceb3e4a0231a42f985ee8e0)

*Armature gerado pelo add-on.*

![](/files/5f47f119d3a6a405f22e4c569ddb2fd755a20680)

*Clipe de animação gerado pelo add-on.*

E pronto, é isso para converter suas partículas em um Armature! Lembre-se de salvar seu arquivo com um nome diferente (mantenha o original como backup); precisaremos dele na próxima etapa.

{% hint style="info" %}
**Atenção!**

⚠️ As partículas devem ser o último elemento adicionado ao seu emote. Quando o emote estiver pronto, você terá o comprimento exato da animação, o que tornará mais fácil sincronizar as partículas com a ação executada.
{% endhint %}

## Mesclando o Armature de partículas ao Armature do prop

Emotes 2.0 só podem ter duas Armatures e dois animation clips por arquivo. Se simplesmente importarmos as partículas, acabaremos com três Armatures e três animation clips. A forma de corrigir isso é mesclar o Armature de partículas no Armature do prop. O motivo para mesclá-lo ao prop e não ao Armature do avatar é muito simples: o rig do avatar não pode ser editado de forma alguma, adicionando ou removendo bones. Isso deixa o Armature do prop como a única opção.

## Mesclando o Armature de partículas ao Armature do prop

Emotes 2.0 só podem ter duas Armatures e dois animation clips por arquivo. Se simplesmente importarmos as partículas, acabaremos com três Armatures e três animation clips. A forma de corrigir isso é mesclar o Armature de partículas no Armature do prop. O motivo para mesclá-lo ao prop e não ao Armature do avatar é muito simples: o rig do avatar não pode ser editado de forma alguma, adicionando ou removendo bones. Isso deixa o Armature do prop como a única opção.

A primeira coisa que precisamos fazer é importar ou anexar a Collection gerada pelo add-on. Você sempre pode exportar o arquivo GLB correspondente e importá-lo para o arquivo do seu emote. Ou pode simplesmente anexar a Collection, o que é muito mais fácil e rápido, indo para ***File*** > ***Append***, localize o arquivo de partículas no seu computador, selecione a pasta ***Collection*** e escolha a Collection desejada.

![](/files/1668884b46ca958610a8906cfdb7892836ad2f57)

*Para anexar uma Collection, vá para File > Append.*

![](/files/6e871a6d3d120fdb50b6afbfc56165fa6d00c2a8)

*Depois de localizar o arquivo de partículas, selecione a pasta Collection.*

![](/files/2f0440dba37e8816ac8a8cbb348293b657be56d0)

*Escolha a Collection gerada pelo add-on (que você teve a oportunidade de renomear). Particles\_Out é apenas como ela foi renomeada neste exemplo.*

Em seguida, vamos mesclar as Armatures. Em Object Mode, selecione primeiro o Armature de partículas, depois mantenha Shift pressionado para selecionar o Armature do prop e pressione Ctrl+J para unir/mesclar ambos, como mostrado abaixo.

![](/files/9e6078c3af5dd7e61936af9227740280f994df5f)

Depois disso, as partículas podem parecer bagunçadas, mas não se preocupe, isso faz parte do processo. Para corrigir isso, selecione cada objeto de partícula no Outliner, um de cada vez, vá para Object Properties (ícone de quadrado laranja) e, em Relations, verifique se o pai é Armature\_Prop. Faça isso para todos os objetos de partícula. Isso significa que todos os objetos são filhos de Armature\_Prop.

![](/files/e916ab96e08b3d087f2bb4211eb32238338e5bd4)

*Certifique-se de que Armature\_Pop seja o pai de cada objeto de partícula.*

Depois de fazer isso para todos os objetos de partícula, selecione o primeiro objeto de partícula no Outliner, vá para Modifiers (o ícone de chave inglesa azul) e o campo Object estará vazio. Como esta é a aba Modifiers, isso significa que aqui você escolherá qual Armature vai controlar o objeto. Então basta clicar em Object e selecionar Armature\_Prop, repetindo isso para todos os objetos de partícula. À medida que fizer isso, você perceberá que os objetos de partícula estão voltando ao tamanho original, corrigindo toda a bagunça criada quando as Armatures foram mescladas.

![](/files/8e092bb7d16806a52b21b7a5863940cd33943146)

*Selecione a Armature correta para controlar os objetos.*

Agora que a Armature está mesclada e configurada corretamente, há mais uma etapa para isso funcionar. Se você tentar reproduzir a animação, perceberá que as partículas não estão se movendo. E isso acontece porque agora elas fazem parte de Armature\_Prop, e a animação que está sendo reproduzida por ele é a do prop. Lembra que as partículas tinham seu próprio animation clip? O que precisamos fazer agora é copiar os keyframes do animation clip das partículas e colá-los no animation clip do prop.

Para fazer isso, vá para ***Pose Mode*** e, no Outliner, expanda ***Armature\_Prop*** e depois ***Pose***. Selecione todos os bones que pertencem às partículas.

![](/files/380fe05cc745f9580a3c83b34c6ceea5a34878e3)

*Selecionando todos os bones das partículas.*

Com os bones selecionados, no Action Editor, selecione o clipe de animação original das partículas que contém todos os keyframes. Selecione todos os keyframes pressionando A, clique com o botão direito e copie os keyframes. Em seguida, selecione a animação do prop, defina um keyframe no primeiro frame e cole os keyframes do clipe de animação das partículas.

![](/files/b7278d63d07160cb8c4402819395eb1ca47f2fa3)

*Copiando frames da animação de partículas para a animação do prop.*

E pronto! Salve o arquivo, certifique-se de excluir o clipe de animação original das partículas e exporte como faria normalmente.

Se precisar de mais informações sobre como fazer isso, consulte a ***Exportando*** seção na [Adicionando Props e Sons aos seus Emotes](https://docs.decentraland.org/creator/emotes/props-and-sounds/) documentação.


---

# 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 dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.decentraland.org/creator/content-creator-pt/wearables-e-emotes/emotes/particles-in-emotes.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
