> 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/rig-features.md).

# Recursos do Rig

Recursos sobre o rig do avatar e o arquivo para download.

Esta documentação explica a configuração do Rig 1.0, os seus controlos e funcionalidades.

{% 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 %}

### Transformações da Armature

Estas são as transformações da Armature em Object Mode com a configuração dos controls. **Não edite isto de forma alguma**. O rig deve ser manipulado apenas em Pose Mode. Para evitar edições indesejadas, as transformações foram bloqueadas em Object Mode.

*Transformações do Rig 1.0.*

{% hint style="warning" %}
⚠️ **Aviso**: **Nunca edite o rig em Object Mode.**
{% endhint %}

## Orientação do Bone

Esta é a orientação dos bones para o Rig 1.0.

*Eixos para a orientação dos bones.*

*Comportamento ao espelhar poses.*

### Espelhar uma pose

Os bones esquerdo e direito do rig não estão organizados da mesma forma, por isso um único truque de espelhamento não funciona para todo o corpo.

* **Pernas e pés** espelham da forma habitual. O Blender **Paste X-Flipped** produz o resultado correto em `CTRL_FK_Avatar_UpLeg`, `CTRL_FK_Avatar_Leg`, `CTRL_FK_Avatar_Foot`, `CTRL_FK_Avatar_ToeBase`, `CTRL_IK_Foot`, `CTRL_IK_Avatar_ToeBase` e `CTRL_Avatar_Knee`. Em números: inverta o sinal de rotação Y e Z, e de localização X.
* **Ombros, braços, mãos e dedos** não espelham. Os bones do lado direito são espelhados num eixo diferente, por isso **Paste X-Flipped** coloca a mão até 90 cm longe de onde a queres. Espelha-os manualmente em vez disso: inverte o sinal de rotação X e Y, e de localização Z. Isto aplica-se a `CTRL_Avatar_Shoulder`, `CTRL_FK_Avatar_Arm`, `CTRL_FK_Avatar_ForeArm`, `CTRL_FK_Avatar_Hand`, `CTRL_IK_Avatar_Hand`, `CTRL_IK_Avatar_Elbow` quanto a `CTRL_Avatar_Hand*` controls dos dedos.

{% hint style="warning" %}
**📔 Observação**: A pose inicial não é perfeitamente simétrica desde o início, por isso espelhar uma pose de um lado para o outro substitui essa pequena assimetria. Verifica o resultado a olho antes de criar um keyframe.
{% endhint %}

### Rodar os braços

O controlo do braço superior, `CTRL_FK_Avatar_Arm`, tem um eixo X local inclinado. Rodá-lo em torno dele varre o braço pelo peito, que é a razão mais comum para os braços acabarem cruzados quando querias levantá-los.

* Para **apontar** o braço, roda-o em torno dos eixos do mundo em vez disso: o X do mundo levanta-o para a frente, o Z do mundo faz-o oscilar para dentro e para fora.
* Para **torcer** o braço, para que a palma fique virada para cima ou para baixo e o cotovelo aponte para dentro ou para fora, roda em torno do Y local do próprio osso.

Os cotovelos, joelhos, pulsos e dedos são dobradiças: rodam apenas em torno do seu X local.

### Coleções de Bones

Para evitar acidentes e facilitar a identificação dos controls, este rig está organizado em bone collections que podem ser acedidas no *Data Properties* separador no Blender. A visibilidade destas collections pode ser ativada e desativada clicando no *Eye Icon.* Por predefinição, todas estão visíveis, exceto as que são DON'T TOUCH.

separador Data Properties da Armature.

Foi assim que os bones foram separados nas collections:

* Global/Switch: controls globais, como os do root e da spine, bem como os ombros. Os controls com quaisquer custom attributes também estão nesta collection.
* FK Upper: todos os controls de configuração FK da parte superior do corpo.
* FK Lower: todos os controls de configuração FK da parte inferior do corpo.
* IK Upper: todos os controls de configuração IK da parte superior do corpo.
* IK Lower: todos os controls de configuração IK da parte inferior do corpo.
* Fingers: controls para os dedos de ambas as mãos.
* Deformation Bones: é aqui que os deformation bones são guardados.

{% hint style="warning" %}
**⚠️ Atenção!**

As collections DON'T TOUCH guardam as configurações para IK e outras constraints do rig e devem permanecer ocultas. Editar estes bones pode quebrar a funcionalidade do rig.
{% endhint %}

## Controles e Agrupamento

Os controls são bones não deformáveis que conduzem o esqueleto base. Têm cores diferentes consoante a sua categoria:

* Amarelo: controls globais e controls com custom attributes
* Verde: anca (mais fácil de identificar na hierarquia da spine)
* Azul: controls com comportamento FK
* Vermelho: controls IK
* Rosa: controls do lado esquerdo
* Laranja: controls do lado direito

*Todos os controls e as suas cores.*

## Atributos Personalizados e Configuração

### Mistura FK/IK

Apesar de os braços serem normalmente definidos como FK e as pernas como IK, há certas situações que vão exigir uma configuração diferente. Se a mão tiver de manter uma determinada posição, como durante flexões ou ao escalar, o IK será a melhor escolha. Quanto às pernas, no ar, a nadar ou a rolar, o FK funciona melhor. Para maior flexibilidade e liberdade na animação, este rig tem uma mistura FK/IK no controlo UpperBody, sendo 0 completamente FK e 1 completamente IK. Qualquer outro valor intermédio será uma mistura dos dois.

![Mistura FK/IK para ambos os braços e pernas.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/ik_fk_rig_1.0.png)

*Mistura FK/IK para ambos os braços e pernas.*

![Como funciona a mudança FK > IK.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/IK_FK_rig_1.0.gif)

*Como funciona a mudança FK > IK.*

Uma regra simples cobre a maioria dos casos: se um membro mantém contacto com algo, mantém-no em IK; se perde o contacto e balança livremente, muda-o para FK. Para uma pose sentada:

* **Ambos os pés no chão**: mantém as pernas em IK. Move os pés com `CTRL_IK_Foot`, depois baixa `CTRL_Avatar_UpperBody` para descer o corpo. Os pés permanecem plantados. Aponta os joelhos com `CTRL_Avatar_Knee`.
* **Uma perna cruzada sobre a outra**: muda apenas a perna levantada para FK.
* **Pés pendentes**: muda ambas as pernas para FK.

Use `CTRL_Avatar_UpperBody` para mover o corpo todo para cima e para baixo. É o centro de gravidade. `CTRL_Avatar_Hips` move apenas a pélvis e as pernas, o que estica o tronco, por isso é o controlo errado para se sentar.

{% hint style="warning" %}
**📔 Observação**: Evita mudar um membro entre FK e IK no meio de um clip. A menos que as duas chains estejam alinhadas exatamente nesse frame, o membro dá um salto. Se precisares mesmo de fazer a mudança, cria um keyframe na própria propriedade FK > IK para que a alteração aconteça onde queres.
{% endhint %}

### Mistura FK de Rotação Isolada

Outro atributo custom no controlo UpperBody é a rotação isolada, que permite escolher se o bone vai ou não herdar a rotação do seu parent (enquanto em FK). Quando está a 0, o bone não herda a rotação; quando está a 1, segue completamente o comportamento do parent. Qualquer outro valor entre estes dois faz uma mistura dos dois. Esta é uma ferramenta interessante porque faz com que o bone FK mantenha a sua posição, comportando-se um pouco como um IK.

![Atributo de rotação isolada para os braços.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/IsoRot_rig_1.0.png)

*Atributo de rotação isolada para os braços.*

![Como funciona o atributo IsoRot para os braços.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/IsoRot_Arms_rig_1.0.gif)

*Como funciona o atributo IsoRot para os braços.*

O controlo Head também tem este atributo. É realmente útil para walk cycles, por exemplo, porque a cabeça mantém a sua rotação mesmo que o torso esteja a rodar, garantindo que está sempre a olhar em frente. Sem esta opção, o animator teria de rodar manualmente a cabeça sempre que o torso rodasse, para que ela ficasse direita e olhasse em frente.

![Atributo de rotação isolada para a cabeça.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/IsoRot_Head_rig_1.0.png)

*Atributo de rotação isolada para a cabeça.*

![Como funciona o atributo IsoRot para a cabeça.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/IsoRot_Head_rig_1.0.gif)

*Como funciona o atributo IsoRot para a cabeça.*

{% hint style="warning" %}
⚠️ **Aviso**: Em versões mais antigas do Blender, mesmo que todos os controls tenham sido selecionados e keyframed, estes custom attributes não serão keyframed automaticamente. Certifica-te de inserir manualmente um keyframe em cada atributo para não perderes a pose/motion que criaste. No Blender 4.4, ao carregar em I, é definido um keyframe em todos os attributes e custom properties.
{% endhint %}

![Em versões anteriores do Blender, certifica-te de fazer keyframe a todos os controls e custom attributes!](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/custom_attributes.gif)

*Em versões anteriores do Blender, certifica-te de fazer keyframe a todos os controls e custom attributes!*

*No Blender 4.4, pressiona I para definir automaticamente um keyframe em Location, Rotation, Scale & Custom Properties..*

Outra solução para fazer keyframe de custom properties é selecionar ***Keying*** em baixo no separador Timeline e em ***Active Keying Set*** selecionar Location, Rotation, Scale & Custom Properties, como mostrado no gif abaixo. Dessa forma, sempre que carregares em I, será criado um keyframe sem o menu pop-up. Como alguns animators preferem o menu, por defeito essa opção não está ativa. Mas sente-te à vontade para escolher o método que te for mais conveniente.

![Fazer keyframe com a opção Keying.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/keyframe_custom_properties.gif)

*Fazer keyframe com a opção Keying.*

### Configuração Invertida do Pé IK

Animar um pé em FK é bastante simples: basta agarrar qualquer um dos controls e rodá-lo. Como há um control para o pé e outro para os dedos dos pés, o animator tem controlo total sobre os movimentos. No entanto, em IK não é tão simples. O pé tem de ficar preso ao chão, mas também tem de poder rodar na planta e no calcanhar e de um lado para o outro.

Este rig foi configurado de forma a dar ao animator liberdade de movimento do pé sem perder as vantagens do sistema IK. Consiste em quatro controls:

* Foot roll: este control roda o pé para trás e para a frente e de um lado para o outro. Para evitar dobrar demasiado no calcanhar ou demasiado na planta, foi definido um limite para que o foot rig não se parta. Quando atinge este limite, o pé pára de rodar.

![Foot roll: roda em X e move-se para trás e para a frente; roda em Z e move-se de um lado para o outro.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/foot_roll.gif)

*Foot roll: roda em X e move-se para trás e para a frente; roda em Z e move-se de um lado para o outro.*

* Toe tip roll: roda o pé a partir da ponta dos dedos. Só roda para a frente.

![O toe tip roll só roda em X positivo.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/toe_tip.gif)

*O toe tip roll só roda em X positivo.*

* Toes control: roda os dedos dos pés a partir da planta.

![Os dedos dos pés podem ser rodados em qualquer direção.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/toes.gif)

*Os dedos dos pés podem ser rodados em qualquer direção.*

* Foot control: este é um controlo global que move o pé como um todo. Como é o parent de todos os outros controls do pé, mantém quaisquer transforms, podendo também ser agarrado e rodado.

![Como funciona o controlo do pé.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/foot.gif)

*Como funciona o controlo do pé.*

### Transforms Bloqueadas

Alguns controls podem ter um símbolo de bloqueio ao lado dos parâmetros de transforms, o que significa que esses valores não podem ser alterados. Isto foi feito para controls que só devem comportar-se de determinada maneira e para evitar qualquer transformação indesejada. Por exemplo, os cotovelos e joelhos devem rodar apenas num eixo, que neste caso é o X, e por isso os outros eixos foram bloqueados. Outros exemplos de controls com atributos bloqueados são os cotovelos e joelhos IK, dedos, foot roll e toe tip.

É aconselhável mantê-los bloqueados, mas caso queiras mais liberdade de movimento, basta clicar no ícone de bloqueio para o desbloquear.

![Transforms bloqueadas num controlo.](https://raw.githubusercontent.com/decentraland/documentation-creators/main/images/emotes/locked_transform.png)


---

# 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/wearables-e-emotes/emotes/rig-features.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.
