> 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/modelacao-3d-e-animacoes/create-a-rig.md).

# Criar um Rig

Saiba como criar um rig para personagens no Decentraland.

Este documento mostra como configurar um rig básico no Blender. Se você quiser se familiarizar mais com alguns conceitos de rigging, confira [O Rig: Conceitos Básicos](https://docs.decentraland.org/creator/emotes/avatar-rig/).

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

### Adicionando a Armature

Antes de tudo, você precisará importar seu modelo 3D para o Blender ou, se já o fez no Blender, basta abrir seu arquivo .blend. No Object Mode, pressione `Shift+A` e selecione ***Armature*** no menu, como mostrado abaixo. Depois, em ***Object Data Properties***, em ***Viewport Display***, ative ***In Front***, para que você possa ver o bone através da Mesh. Mesh e armature devem estar alinhados, então certifique-se de que o modelo esteja bem posicionado no centro do mundo antes de adicionar os bones. A origem da armature deve estar em 0,0,0 (X,Y,Z).

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-c6973f5e25776caf3b102a81dcc941a20086a0db%2F01_add_armature.gif?alt=media\&token=9efd3c69-112f-4440-886a-83726d611130)

*Adicionando uma armature e exibindo-a através da Mesh.*

### Editando a Armature

Depois de adicionar o objeto Armature, selecione-o e vá para ***Edit Mode***. É aqui que você adiciona os outros bones extrudando o original (pressione `E`), duplicando-o (`Shift+D`) ou simplesmente adicionando um novo com `Shift+A`. O skeleton deve seguir a forma do modelo, como um skeleton real. Bones podem ser dimensionados, movidos e rotacionados, e têm duas partes: a head e a tail. A head é o pivot point, o que significa que rotações e escala começarão a partir daí. Isso também significa que é lá que ocorrerá a deformação da Mesh, então posicione os bones o mais centralizados possível na Mesh.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-4dae1276b8646cac09fe19802a67508444d47417%2F02_bone_head_tail.png?alt=media\&token=25fdba35-9df7-4c7c-8b55-aee21a823a17)

*Estrutura do bone.*

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-2cd7dcc2ed4b4398b83ce727d4409e83a0e5c6be%2F03_bone_pivot_rotation.gif?alt=media\&token=5199a45b-6c41-4286-8615-254c6dcb2f7e)

*Bone rotacionando a partir do seu pivot point.*

Não há necessidade de se preocupar em criar bones para os lados direito e esquerdo por enquanto. Concentre-se primeiro em criar apenas um lado.

### Renomeando os Bones

Algo realmente importante a ter em mente é renomear corretamente todos os seus bones, de acordo com [a convenção de nomenclatura do Blender](https://docs.blender.org/manual/en/latest/animation/armatures/bones/editing/naming.html). Isso não só manterá tudo organizado, como também tornará possível espelhar poses e Weight Paint. Você poderia simplesmente renomeá-lo com a parte do corpo que ele representa, como Spine\_01, ou ser mais específico e chamá-lo de DEF\_spine.001 (DEF significa deforming bone, então você sabe que este bone faz parte da hierarquia deforming).

### Orientação do Bone

Antes de prosseguir, você deve verificar a orientação do seu bone. Você pode fazer isso indo para ***Object Data Properties*** e, em ***Viewport Display***, ative ***Axes***. Isso tornará os axes dos bones visíveis, para que você possa verificar se eles vão rotacionar na direção correta.

Os axes devem estar alinhados com a direção na qual você quer que os bones rotacionem. Se parecer um pouco estranho, selecione o bone e, no ***Item Transform*** menu à direita do viewport, ajuste o ***Roll*** até que a orientação fique correta.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-0c0d71080b074a65d6b05052b04de6441d92cdc1%2F04_bone_roll.gif?alt=media\&token=b068e579-8d58-4a49-ba7e-c090d3e14408)

*Corrigindo o bone roll.*

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-c48c9252d24dfa90de0f9076edd6ac8d14aa0f59%2F05_toggle_axes.png?alt=media\&token=73472dc0-a1ec-457d-aa98-7bfafd26c5c9)

*Ative Axes para que você possa ver a direção na qual o bone vai rotacionar.*

Corrigir o bone roll é especialmente importante para os fingers, para que todas as joints dobrem na mesma direção correta. Porém, você não precisa fazer isso em todos os bones de um finger; basta acertar um deles. Em seguida, selecione primeiro os que você quer corrigir e, por último, o que tem o roll correto, vá para ***Armature > Bone Roll > Recalculate Roll > Active Bone*** e todos terão o mesmo roll. Ou você pode simplesmente pressionar `Shift+N` > ***Active Bone***. Isso pode ser usado em muitas situações em que você tem uma longa chain de bones, como um tentacle, uma tail, um rabo de cavalo longo ou um braço mecânico.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-6efbb0a40086e781c63a2f5149426342875b2a5f%2F06_bone_roll_fingers.gif?alt=media\&token=566da285-97b0-46bd-b270-6abc153e7baf)

*Pressione `Shift+N` para recalcular o bone roll.*

### Espelhando o Rig

Você não precisa criar bones para os dois lados. Basta fazer um lado primeiro e, quando tiver corrigido toda a nomenclatura e a orientação dos bones, selecione todos os bones que você quer espelhar, clique com o botão direito do mouse e selecione ***Symmetrize***. Dessa forma, todos os bones serão espelhados corretamente, com as orientações certas. Lembre-se de que, para essa ferramenta funcionar, os bones precisam ser nomeados de acordo com a convenção de nomenclatura do Blender. Se houver um “L”, “R”, “left” ou “right” em maiúscula ou minúscula, o Blender trata corretamente o correspondente.

Alguns exemplos de convenção de nomenclatura correta:

* Hand\_L –> Hand\_R
* Hand.L –> Hand.R
* HandLeft –> HandRight

**Todos os exemplos acima são válidos, mas escolha apenas um e mantenha-o consistente em todo o rig.**

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-007509c211a7ceead4aaf6607a2be0245302f7fa%2F07_symmetrize.gif?alt=media\&token=262f4898-3432-4f19-a017-dbf0a64d114a)

*Use a opção Symmetrize para espelhar seus bones.*

{% hint style="info" %}
**⚠️ Atenção!** Symmetrize só funcionará se os bones estiverem renomeados corretamente. Se não espelhar corretamente, talvez você queira conferir novamente os nomes dos bones.
{% endhint %}

### Skinning

Skinning é o processo de vincular a Mesh à Armature. Para isso, em ***Object Mode***, selecione a Mesh, depois a Armature e pressione `CTRL+P` > ***Armature Deform > With Automatic Weights.*** Depois, vá para ***Pose Mode*** e teste diferentes poses para testar a deformação da Mesh. Na maioria das vezes, serão necessários alguns ajustes, como mostrado abaixo.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-3760b7b37e04e1e562192100b7a9d4f77d2dfc5e%2F08_skinning.gif?alt=media\&token=e2e9d02f-0ac3-4f4d-8953-6acdc138589c)

*Para o Skinning, torne a Mesh filha da Armature pressionando `CTRL+P` e teste-a em Pose Mode.*

Se você achar que um bone foi posicionado incorretamente ou que o pivot point não está preciso, você sempre pode voltar para a armature’s ***Edit Mode*** e ajustá-lo. Isso não afetará o Skinning de forma alguma e você sempre pode usar ***Symmetrize*** para espelhar as alterações.

Para corrigir deformações estranhas, vá para ***Object Mode***, selecione a mesh e vá para ***Weight Paint***. Em ***Object Data Properties*** você encontrará os ***Vertex Groups***.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-1bb3ce9a3a5725a63d03d0f1df80f2b3763f42b4%2F09_weight_paint.gif?alt=media\&token=451b0ed9-14b8-4a7e-ae16-340db1e19306)

*Edite a influência de um bone no Weight Paint.*

Antes de começar a editar, para que seu Weight Paint seja espelhado automaticamente enquanto você pinta, ative ***Mirror Vertex Groups*** e selecione ***X*** em ***Mirror*** em ***Symmetry*** (no Blender 3.4.0) Para editar as influências, selecione o vertex group que você quer e, no ***Tool*** menu, em ***Blend***, alterne entre ***Add*** e ***Subtract*** de acordo com suas necessidades. Você também pode alterar o tamanho, o peso e a intensidade do brush.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-52c7a15a123b6a1bbc7e9ea69f06ffb5cd29b094%2F10_weight_paint_tools.png?alt=media\&token=6052e440-a911-4b97-8cc2-d33ec7fb3d68)

*Altere o Blend para adicionar ou remover influência. Certifique-se de que a Symmetry esteja correta.*

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-a63632a48ac6bcae96650bb2183d2b21fec2dda6%2F11_weight_paint_tools_02.png?alt=media\&token=a68dac48-92ee-4878-87bc-4c6c1317a420)

Use o ***Blur*** ferramenta no lado esquerdo da tela para suavizar o Weight Paint e deixá-lo mais uniforme.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-726c58dd537ea63e8490e4415d7484fa71cbac51%2F12_blur_tool.gif?alt=media\&token=f86c8e33-a7b2-4406-9b41-64cb4a3c9fde)

*Blur Tool.*

### Configurando o IK

O IK é essencial quando você quer que algo permaneça no lugar. O melhor exemplo de seu uso é nas legs, mas ele pode ser adotado em diversas situações, como nos exemplos abaixo:

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-935e8ce9abfafba6f7bfe06557f0d3d9528725c1%2F13_IK_example_mch_arm.gif?alt=media\&token=aae959f0-2544-40b9-94b3-03555471eb33)

*Uso de IK em um braço mecânico.*

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-63302e8e083d48163c973c36b9ec5fe21530fc80%2F14_IK_example_buddha.gif?alt=media\&token=079b309b-25c3-4122-a013-3f54ac7890f0)

*Uso de IK em cabos.*

Como isso mudará a hierarquia dos bones, é melhor mantê-lo como uma configuração separada. Portanto, a primeira coisa que você precisa fazer é duplicar a cadeia de bones que será afetada pelo IK. Vamos usar a perna como exemplo. Selecione os bones, pressione `Shift+D` para duplicá-los e movê-los para uma layer diferente pressionando `M` e selecionando um slot diferente para ela.

Lembre-se de renomear os bones duplicados, adicionando IK ao nome para que você saiba que eles fazem parte da configuração de IK. E, como eles não devem deformar a Mesh, selecione todos eles e, em ***Bone Property***, pressione e segure `Alt` e desmarque ***Deform***.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-f1374db528e9a5e02f39fa7db7af159fd6596e24%2F15_Duplicating_bones.gif?alt=media\&token=423f2a3f-9628-425f-88d9-6e79b3e2fc57)

*Duplique os bones e mova-os para uma layer diferente.*

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-6df947d8af4f946e912ec0e018e2c49d7f89da4d%2F16_uncheck_deform.png?alt=media\&token=9149aca0-13b9-400a-ba2c-b6762f31e855)

*Selecione todos os bones de IK e, mantendo `Alt`, desmarque Deform.*

Em seguida, você precisará criar um bone que conduzirá a cadeia de IK. Selecione a head do bone do pé e extrude-o em Y. Depois, pressione `Alt+P` para desparentá-lo, porque o bone de IK não pode fazer parte da chain e não pode ser conectado a outros bones. Você precisará fazer do bone do pé um child do IK, então selecione primeiro o foot bone e o IK bone por último e pressione `CTRL+P` > ***Keep Offset***.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-bfd0bf6509a324354e31305bc7b1e53d1109860a%2F17_IK_bone.gif?alt=media\&token=45655e86-963b-44d9-bf91-4b4bb045d33d)

*Criando um bone de IK.*

Em ***Pose Mode***, clique no shin bone, pressione `CTRL+Shift+C` e selecione ***Inverse Kinematics***. Vai parecer tudo bagunçado, mas não se preocupe, isso será corrigido assim que você alterar algumas configurações. Com o shin selecionado, vá para as ***Bone Constraint Properties*** como mostrado abaixo.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-b1676c9b0072ce6098038a28e17c022b2bb8c4bd%2F18_constraint_tab.png?alt=media\&token=ee5ba298-60f1-4651-826b-f8704daad3e8)

*Em Bone Constraint Properties, você pode editar as configurações de IK.*

Para o ***Target***, selecione ***Armature***. Depois disso, uma opção chamada ***Bone*** aparecerá em Target. Para isso, selecione o bone de IK que você criou. Em ***Chain Length*** você definirá o número de bones que devem ser afetados pelo IK. Como estamos fazendo uma leg, queremos que ele afete o shin e a thigh, então defina-o para ***2***.

### Pole Target

O Pole Target permite que você controle a direção na qual os bones vão dobrar. Estas são as etapas para adicionar corretamente um pole target (ou pole vector) à cadeia de IK:

* Em ***Edit Mode***, duplique o thigh bone e coloque-o em qualquer lugar.
* Selecione a articulação do joelho (ou a tail do bone da coxa), pressione `Shift+S` > ***Cursor to Selected.***
* Com o bone da coxa duplicado selecionado, pressione `Shift+S` > ***Selection to Cursor***.
* Em ***Transform Orientation***, altere para ***Normal*** e em ***Tansform Pivot Point*** altere para ***Active Element***.
* Rotacione o bone em X em -90 (ou 90, dependendo da orientação que você definiu) para que ele aponte para frente e mova-o em Y até que fique em uma boa posição à frente da perna. Você também pode reduzi-lo um pouco.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-ec551b2e1c2613ef0b88c60ec7fdde0f26feb0db%2F19_creating_pole_target.gif?alt=media\&token=1808a95b-f331-4d03-9e69-2e09481ba877)

*Criando um Pole Target.*

De volta a ***Pose Mode***, selecione novamente o shin e vá para as ***Bone Constraint Properties***. Para ***Pole Target*** selecione ***Armature*** e, para ***Bone***, selecione o pole target que você acabou de criar. Se você exibir os deform bones, verá que o pole target rotacionou um pouco o IK.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-e1e22b302d706bda9fca98b9118220d04928ae31%2F20_pole_target_rotation.png?alt=media\&token=7f548b98-1e8a-4570-9b85-0112a2ebf7c1)

*A cadeia de IK e os deform bones não estão mais alinhados por causa do pole target.*

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-7d1a769971f5aecdf4ec81aded5c3617b3015e62%2F21_pole_target_rotation_fix.png?alt=media\&token=b83fe4a5-6d1e-4586-a6c5-9a975d2cbd24)

*A rotação pode ser corrigida alterando o Pole Angle.*

Isso pode ser facilmente corrigido alterando o ***Pole Angle***. Normalmente -90° resolve, mas você sempre pode ajustá-lo manualmente para garantir que fiquem perfeitamente alinhados.

Por fim, torne tanto o bone de IK quanto o pole target filhos do root bone, selecionando ambos e depois o root, pressione `CTRL+P` > ***Keep Offset***.

Mova a coxa e a canela para outra layer, já que você não precisará deles para a animação; eles são apenas parte da configuração de IK.

### Vinculando Bones Deformantes a Bones Não Deformantes

A cadeia de IK já está configurada, mas ela deveria conduzir os deform bones e, no momento, isso não está acontecendo; porém, você pode usar constraints para corrigir isso. Em ***Pose Mode***, selecione primeiro um bone da cadeia de IK e por último o bone deformante correspondente, pressione `CTRL+Shift+C` e selecione ***Copy Transforms***. Faça isso para todos os bones, que no exemplo são thigh, shin, foot e toes. Os deform bones terão uma cor verde, o que significa que eles têm um constraint. Se você clicar em ***Bone Constraint Properties***, você pode ver qual constraint está sendo usado e qual bone o está conduzindo.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-4b1aad10799e9e884ad22ac6aa34423d1c51f092%2F22_constraints.gif?alt=media\&token=4bf40f37-b64d-4047-a423-37bcdba47fd4)

*Bones verdes têm constraints. Você pode verificá-los em Bone Constraints Properties.*

{% hint style="info" %}
**💡 Dica**: Você não precisa configurar o IK tudo de novo para o outro lado. Em *Edit Mode*, basta excluir todos os bones do lado que não tem IK, depois selecione todos os bones deformantes e a cadeia de IK que você quer espelhar, clique com o botão direito do mouse e selecione *Symmetrize*. Isso não apenas espelhará os bones, mas também todas as constraints!
{% endhint %}

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-14fab81d4db0c4694e5f5268a411e47e3f9b6652%2F23_symmetrize_constraints.gif?alt=media\&token=889b8dbe-9ae3-499d-91c9-9a5a00f9f925)

*Use a opção Symmetrize para espelhar constraints também!*

### Skeleton não deformante e Controls\*\*

É uma boa prática não animar diretamente os bones deformantes, já que isso pode acabar quebrando o rig, e adicionar constraints à armature deformante afetará a hierarquia e o comportamento dos bones quando exportado.

A solução para isso é criar um skeleton não deformante que conduzirá o deformante por meio de constraints e que possa ser animado com segurança, sem risco de quebrar nada. Você também pode personalizar sua forma para facilitar a identificação da função de um bone. Eles serão os controls do seu rig.

O processo para isso é praticamente o mesmo feito para a configuração de IK. Duplique todos os bones (exceto a configuração de IK) com `Shift+D` e mova-os para uma layer diferente pressionando `M` e escolhendo outro slot. Renomeie todos eles adicionando **Control\_** ou **CTRL\_** como sufixo para que você saiba que fazem parte da hierarquia de controls. Pressione `Um` para selecionar todos eles e, em ***Bone Property***, pressione e segure `Alt` e desmarque ***Deform***.

Agora você terá que adicionar constraints para vincular os dois skeletons. Para facilitar esse processo, você pode alterar a forma do bone clicando em ***Object Data Properties*** e, em ***Viewport Display***, altere ***Display As*** de ***Octahedral*** como ***B-Bone***. Depois, pressione `CTRL+Alt+S` para ampliar um pouco os bones, para que fiquem maiores que os originais.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-5725fb32569cd799a4059f171977ef2203374bac%2F24_b-bone_scale.gif?alt=media\&token=1cf2e5e5-9e6e-452a-94ea-05f50362fe16)

*Altere a forma do bone e amplie-os para que seja mais fácil diferenciar os dois skeletons.*

Para os constraints, selecione primeiro um control bone e por último o bone deformante correspondente, pressione `CTRL+Shift+C` e selecione ***Copy Transforms***. Faça isso para todos os control bones.

Você pode separar os control bones em diferentes groups e atribuir cores a eles. Vá para ***Pose Mode*** > ***Object Data Properties*** > ***Bone Groups***. Clique no ***+*** ícone para adicionar um novo group, renomeie-o como achar melhor e selecione uma cor para ele. Depois, selecione os bones que você quer que façam parte desse group e clique em ***Assign***. Você pode criar quantos groups quiser para manter tudo organizado. Você também pode mover diferentes groups de bones para layers diferentes.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-9724d3bb3b528d34d86dfcd264f3d93a50532718%2F25_bone_groups.png?alt=media\&token=b8a44c12-ef9e-46df-a88e-055dd1d50569)

*Os bone groups ajudarão você a manter seu rig organizado e mais intuitivo.*

Uma maneira extra de melhorar seu rig é personalizar a forma dos bones. Para isso, vá para ***Object Mode***, prima `Shift+A` para adicionar uma Mesh, como um círculo, por exemplo. Para manter tudo organizado, crie uma collection para suas shapes e mova para lá o círculo que você acabou de criar. Volte para Pose Mode e, em ***Object Data Properties*** > ***Viewport Display*** marque ***Shapes***. Selecione o bone desejado e então, em ***Bone Properties***, clique em ***Viewport Display*** > ***Custom Shape***. Em ***Custom object***, selecione o círculo no outliner.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-017280155b1fd53bb176015d20b67bd2b4cd8cf2%2F26_bone_shape.gif?alt=media\&token=c95dcce8-d6df-4f8b-84c7-d291cc45431b)

*Personalizando a forma do bone.*

Se a forma parecer estranha, você sempre pode editá-la em ***Edit Mode***, como mostrado abaixo. Certifique-se de que a forma tenha a mesma orientação do bone.

![](https://2402076176-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FoPnXBby9S6MrsW83Y9qZ%2Fuploads%2Fgit-blob-479d3b41de60819e9a66f53e0bf76b3216dc4bac%2F27_bone_shape_edit.gif?alt=media\&token=6ba90647-a426-4f6b-95ea-6333104ec95a)

*Edite a forma em Edit Mode.*

Crie formas diferentes para controls diferentes de acordo com sua função para tornar seu rig mais intuitivo.

### Spring Bones

Além do skeleton deformante padrão, wearables podem incluir **spring bones** — bones extras cujos transforms são conduzidos por simulação de física, e não por animação. Spring bones fazem o hair, os earrings, as capes e outros accessories se moverem dinamicamente em resposta ao movimento do avatar e à gravidade.

Para adicionar spring bones a um rig:

1. Em **Edit Mode**, extrude novos bones a partir do bone pai apropriado (por exemplo, `Avatar_Head` para hair).
2. Nomeie cada bone incluindo `springbone` no nome (sem diferenciar maiúsculas e minúsculas), por exemplo: `SpringBone_hair_left`, `springbone_hair_left_01`, `Hair_SpringBone_left_tip` são nomes válidos, desde que incluam `springbone`.
3. Compilar **linear chains** com pelo menos **2 bones** (um root e um tip). Um único spring bone, sozinho, não produzirá nenhum movimento — a simulação precisa de uma chain com um root bone que conduza a física e um tip bone que defina o endpoint. Cada bone da chain deve ter no máximo um spring bone child.
4. Aplique skin weight na Mesh aos spring bones como de costume.
5. Exporte como `.glb` — os spring bones serão incluídos na armature.

Os parâmetros de física (stiffness, gravity, drag) são configurados no Builder após o upload, não no Blender. Para o guia completo, veja [Spring Bones](https://docs.decentraland.org/creator/wearables-and-emotes/wearables/spring-bones).

E é isso! Com todas essas informações, você está pronto para fazer um rig básico!


---

# 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-pt/modelacao-3d-e-animacoes/create-a-rig.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.
