---
title: "Root motion"
version: snapshot-2026-10-16
engineGeneration: astra-current
language: C#
status: source-reviewed
reviewedAt: 2026-10-16
appRelease: "0.3.1-preview.20261016"
runtimeVerified: false
platformEvidence: []
url: https://astraengine.com.br/pt-br/snapshot-2026-10-16/componentes/astra-animation-root-motion/
---
# Root motion
O passo do osso raiz anima o personagem; o osso fica no lugar
**Família:** Animação · **Grupo:** Movimento · **Identificador:** `astra.animation.root_motion` · **Payload:** 1
:::note[Escopo da evidência]
Este contrato foi extraído dos descritores compilados da engine, incluindo padrões resolvidos. A presença do contrato não substitui a validação do comportamento em um aparelho.
:::
## Para que usar
O passo do osso raiz move o personagem pela cena, com o osso ficando no lugar: andar, correr e girar saem do clipe.
No estúdio, ⋮ → **Root motion** cria o componente com o osso raiz encontrado pelo nome ou pela estrutura; escolha o que extrair (plano, vertical, giro) e a frente do osso.
## Criar e configurar
Hierarquia → selecione o objeto → Inspector → Adicionar componente → **Animação** / **Movimento** → **Root motion**.
O schema permite uma única instância desse tipo por objeto. A fachada C# correspondente é [Astra.Components.RootMotion](/pt-br/snapshot-2026-10-16/api/astra-components-rootmotion/).
Salto e giro de laço corrigem a descontinuidade entre o último e o primeiro quadro; Osso fica no lugar remove o deslocamento do próprio osso.
**Guia relacionado:** [Estúdio v2](/pt-br/snapshot-2026-10-06/versoes/preview-0-3-1/#estúdio-de-animação-v2)
## Exemplo de uso
Clipe de caminhada em loop: com Andar no plano e Salto de laço, o personagem avança a cada volta em vez de voltar ao início; com Personagem, o movimento passa pela física.
## Dependências
Nenhuma regra adicional declarada no schema deste componente.
## Conflitos
Nenhuma regra adicional declarada no schema deste componente.
## Edição e ciclo de vida
| Operação | Contrato |
|---|---|
| Adicionar/remover em Play | ponto seguro |
| Alterar propriedades em Play | ponto seguro |
| Múltiplas instâncias | Não |
| Versão do payload | 1 |
Alterações em ponto seguro são aplicadas entre passos da simulação. Um componente exigido por outro não pode ser removido enquanto a dependência existir. Salvar a cena autoral e modificar o mundo de Play são operações distintas; veja [Play e cena autoral](/pt-br/snapshot-2026-10-06/conceitos/play-e-cena-autoral/).
## Propriedades
Valores abaixo são resolvidos pelo descritor de um componente recém-criado. Campos por slot dependem dos recursos atribuídos. Um campo sem padrão significa que o descritor não fornece um valor independente de contexto.
### Movimento
| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
| [**Peso**](#field-weight)
`weight` | número | 1 | 0 … 1 |
| [**Ativo**](#field-enabled)
`enabled` | booleano | verdadeiro | verdadeiro \| falso |
| [**Andar no plano**](#field-horizontal)
`horizontal` | booleano | verdadeiro | verdadeiro \| falso |
| [**Subir e descer**](#field-vertical)
`vertical` | booleano | falso | verdadeiro \| falso |
| [**Girar**](#field-rotation)
`rotation` | booleano | verdadeiro | verdadeiro \| falso |
Peso · weight
**Onde:** Inspector → **Root motion** → **Movimento** → **Peso**.
**Uso e efeito:** 0 desliga, 1 aplica por inteiro; anime para ligar e desligar o efeito com suavidade.
**Valor:** 1 · **Tipo:** número · **Domínio:** 0 … 1.
Translação, rotação e escala; pesos de morph não; sem mistura entre clipes Capacidade necessária: `animation.clip`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Ativo · enabled
**Onde:** Inspector → **Root motion** → **Movimento** → **Ativo**.
**Uso e efeito:** Desligado, o componente fica na cena sem agir.
**Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.
Translação, rotação e escala; pesos de morph não; sem mistura entre clipes Capacidade necessária: `animation.clip`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Andar no plano · horizontal
**Onde:** Inspector → **Root motion** → **Movimento** → **Andar no plano**.
**Uso e efeito:** Extrai o movimento no plano.
**Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.
Translação, rotação e escala; pesos de morph não; sem mistura entre clipes Capacidade necessária: `animation.clip`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Subir e descer · vertical
**Onde:** Inspector → **Root motion** → **Movimento** → **Subir e descer**.
**Uso e efeito:** Extrai subida e descida.
**Valor:** falso · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.
Translação, rotação e escala; pesos de morph não; sem mistura entre clipes Capacidade necessária: `animation.clip`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Girar · rotation
**Onde:** Inspector → **Root motion** → **Movimento** → **Girar**.
**Uso e efeito:** Extrai o giro.
**Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.
Translação, rotação e escala; pesos de morph não; sem mistura entre clipes Capacidade necessária: `animation.clip`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
### Laço
| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
| [**Salto de laço**](#field-loop-jump)
`loop_jump` | número · m | 0.5 | 0.01 … 10 |
| [**Giro de laço**](#field-loop-turn)
`loop_turn` | número · graus | 45 | 1 … 180 |
Salto de laço · loop_jump
**Onde:** Inspector → **Root motion** → **Laço** → **Salto de laço**.
**Uso e efeito:** Compensação de posição entre o fim e o início do laço.
**Valor:** 0.5 · **Tipo:** número · **Unidade:** m · **Domínio:** 0.01 … 10.
Translação, rotação e escala; pesos de morph não; sem mistura entre clipes Capacidade necessária: `animation.clip`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Giro de laço · loop_turn
**Onde:** Inspector → **Root motion** → **Laço** → **Giro de laço**.
**Uso e efeito:** Compensação de giro no laço.
**Valor:** 45 · **Tipo:** número · **Unidade:** graus · **Domínio:** 1 … 180.
Translação, rotação e escala; pesos de morph não; sem mistura entre clipes Capacidade necessária: `animation.clip`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
### Osso
| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
| [**Osso fica no lugar**](#field-keep-bone-in-place)
`keep_bone_in_place` | booleano | verdadeiro | verdadeiro \| falso |
| [**Frente do osso**](#field-axis)
`axis` | enumeração | +Z | +X \| +Y \| +Z \| -X \| -Y \| -Z |
| [**Osso raiz**](#field-bone)
`bone` | referência | Escolher osso | qualquer objeto · abaixo deste objeto |
Osso fica no lugar · keep_bone_in_place
**Onde:** Inspector → **Root motion** → **Osso** → **Osso fica no lugar**.
**Uso e efeito:** Remove o deslocamento do próprio osso.
**Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.
Translação, rotação e escala; pesos de morph não; sem mistura entre clipes Capacidade necessária: `animation.clip`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Frente do osso · axis
**Onde:** Inspector → **Root motion** → **Osso** → **Frente do osso**.
**Uso e efeito:** Eixo local do osso que aponta para a frente.
**Valor:** +Z · **Tipo:** enumeração · **Domínio:** +X \| +Y \| +Z \| -X \| -Y \| -Z.
Translação, rotação e escala; pesos de morph não; sem mistura entre clipes Capacidade necessária: `animation.clip`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Osso raiz · bone
**Onde:** Inspector → **Root motion** → **Osso** → **Osso raiz**.
**Uso e efeito:** Osso raiz; encontrado pelo nome ou pela primeira bifurcação.
**Valor:** Escolher osso · **Tipo:** referência · **Domínio:** qualquer objeto · abaixo deste objeto.
Translação, rotação e escala; pesos de morph não; sem mistura entre clipes Capacidade necessária: `animation.clip`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
## Roadmap deste componente
[Objetos, Behaviors e composição](/pt-br/snapshot-2026-10-06/roadmap/objetos-e-scripts/). Presente na 0.3.1. Sem curvas de root motion editáveis à parte do clipe. Sem data prometida.
Os campos acima pertencem ao contrato existente; novas funções dependem do fechamento da família. Não há datas individuais prometidas para cada propriedade.
## Conferir na sua cena
1. Crie **Root motion** pelo fluxo indicado e resolva as dependências.
2. Altere uma propriedade por vez e observe o efeito esperado na cena.
3. Salve, reabra e confira os valores autorais.
4. Entre em Play e verifique o comportamento com os recursos reais do projeto.
5. Pare o Play e confira a cena autoral.
Este é um roteiro de conferência; não representa um teste executado nesta publicação.
## Limitações da referência
A tabela cobre os tipos de propriedade disponíveis no descritor de reflexão. Não presume persistência de campos transitórios, equivalência com outras engines ou suporte em todos os aparelhos. Recursos, coleções e operações podem exigir APIs específicas.
**Referência de arquitetura registrada pela engine:** [documentação oficial](https://docs.unity3d.com/6000.0/Documentation/Manual/RootMotion.html). Essa referência não representa paridade funcional.