--- title: "Parent Constraint" version: snapshot-2026-10-06 engineGeneration: astra-current language: C# status: source-reviewed runtimeVerified: false platformEvidence: [] url: https://astraengine.com.br/pt-br/snapshot-2026-10-06/componentes/astra-constraint-parent/ --- # Parent Constraint Segue posição e rotação da fonte sem herdar escala **Família:** Lógica · **Grupo:** Restrições · **Identificador:** `astra.constraint.parent` · **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 Segue posição e rotação da fonte sem herdar escala Ligue a fonte/alvo no Inspector; escolha os eixos e a influência. Use em um objeto cuja pose não esteja sob autoridade incompatível da física ou de outro controlador. ## Criar e configurar Hierarquia → selecione o objeto → Inspector → Adicionar componente → **Lógica** / **Restrições** → **Parent Constraint**. O schema permite uma única instância desse tipo por objeto. A fachada C# correspondente é [Astra.Components.ParentConstraint](/pt-br/snapshot-2026-10-06/api/astra-components-parentconstraint/). ## Exemplo de uso Crie um objeto visual e uma fonte. Atribua a fonte, mova-a em Play e compare o objeto com Peso 0 e Peso 1. Para mola, compare duas frequências e observe a aproximação ao alvo. ## 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. ### Influência | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Peso**](#field-weight)
`weight` | número | 1 | 0 … 1 | | [**Ativo**](#field-enabled)
`enabled` | booleano | verdadeiro | verdadeiro \| falso | | [**Fonte**](#field-target)
`target` | referência | Escolher fonte | qualquer objeto · fora da subárvore |

Peso · weight

**Onde:** Inspector → **Parent Constraint** → **Influência** → **Peso**. **Uso e efeito:** Influência do resultado: 0 não influencia e 1 aplica integralmente. Compare com a pose sem a restrição. **Valor:** 1 · **Tipo:** número · **Domínio:** 0 … 1.

Ativo · enabled

**Onde:** Inspector → **Parent Constraint** → **Influência** → **Ativo**. **Uso e efeito:** Ativa/desativa a participação do componente no sistema consumidor; não remove seus dados. **Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.

Fonte · target

**Onde:** Inspector → **Parent Constraint** → **Influência** → **Fonte**. **Uso e efeito:** Referência a objeto fonte/alvo usada por este componente. Atribua pelo seletor; nome sozinho não mantém identidade. **Valor:** Escolher fonte · **Tipo:** referência · **Domínio:** qualquer objeto · fora da subárvore. ### Ajustes | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Deslocamento X**](#field-offset-x)
`offset_x` | número · u | 0 | -10000 … 10000 | | [**Deslocamento Y**](#field-offset-y)
`offset_y` | número · u | 0 | -10000 … 10000 | | [**Deslocamento Z**](#field-offset-z)
`offset_z` | número · u | 0 | -10000 … 10000 | | [**Aplicar X**](#field-axis-x)
`axis_x` | booleano | verdadeiro | verdadeiro \| falso | | [**Aplicar Y**](#field-axis-y)
`axis_y` | booleano | verdadeiro | verdadeiro \| falso | | [**Aplicar Z**](#field-axis-z)
`axis_z` | booleano | verdadeiro | verdadeiro \| falso |

Deslocamento X · offset_x

**Onde:** Inspector → **Parent Constraint** → **Ajustes** → **Deslocamento X**. **Uso e efeito:** Deslocamento do resultado/volume em relação à origem configurada, eixo X. **Valor:** 0 · **Tipo:** número · **Unidade:** u · **Domínio:** -10000 … 10000.

Deslocamento Y · offset_y

**Onde:** Inspector → **Parent Constraint** → **Ajustes** → **Deslocamento Y**. **Uso e efeito:** Deslocamento do resultado/volume em relação à origem configurada, eixo Y. **Valor:** 0 · **Tipo:** número · **Unidade:** u · **Domínio:** -10000 … 10000.

Deslocamento Z · offset_z

**Onde:** Inspector → **Parent Constraint** → **Ajustes** → **Deslocamento Z**. **Uso e efeito:** Deslocamento do resultado/volume em relação à origem configurada, eixo Z. **Valor:** 0 · **Tipo:** número · **Unidade:** u · **Domínio:** -10000 … 10000.

Aplicar X · axis_x

**Onde:** Inspector → **Parent Constraint** → **Ajustes** → **Aplicar X**. **Uso e efeito:** Aplica a restrição no eixo indicado; desligar conserva esse canal fora da influência. **Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.

Aplicar Y · axis_y

**Onde:** Inspector → **Parent Constraint** → **Ajustes** → **Aplicar Y**. **Uso e efeito:** Aplica a restrição no eixo indicado; desligar conserva esse canal fora da influência. **Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.

Aplicar Z · axis_z

**Onde:** Inspector → **Parent Constraint** → **Ajustes** → **Aplicar Z**. **Uso e efeito:** Aplica a restrição no eixo indicado; desligar conserva esse canal fora da influência. **Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso. ### Rotação | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Rotação offset X**](#field-rotation-offset-x)
`rotation_offset_x` | número · graus | 0 | -10000 … 10000 | | [**Rotação offset Y**](#field-rotation-offset-y)
`rotation_offset_y` | número · graus | 0 | -10000 … 10000 | | [**Rotação offset Z**](#field-rotation-offset-z)
`rotation_offset_z` | número · graus | 0 | -10000 … 10000 | | [**Rotação X**](#field-rotation-x)
`rotation_x` | booleano | verdadeiro | verdadeiro \| falso | | [**Rotação Y**](#field-rotation-y)
`rotation_y` | booleano | verdadeiro | verdadeiro \| falso | | [**Rotação Z**](#field-rotation-z)
`rotation_z` | booleano | verdadeiro | verdadeiro \| falso |

Rotação offset X · rotation_offset_x

**Onde:** Inspector → **Parent Constraint** → **Rotação** → **Rotação offset X**. **Uso e efeito:** Offset angular da orientação resultante, eixo X. **Valor:** 0 · **Tipo:** número · **Unidade:** graus · **Domínio:** -10000 … 10000.

Rotação offset Y · rotation_offset_y

**Onde:** Inspector → **Parent Constraint** → **Rotação** → **Rotação offset Y**. **Uso e efeito:** Offset angular da orientação resultante, eixo Y. **Valor:** 0 · **Tipo:** número · **Unidade:** graus · **Domínio:** -10000 … 10000.

Rotação offset Z · rotation_offset_z

**Onde:** Inspector → **Parent Constraint** → **Rotação** → **Rotação offset Z**. **Uso e efeito:** Offset angular da orientação resultante, eixo Z. **Valor:** 0 · **Tipo:** número · **Unidade:** graus · **Domínio:** -10000 … 10000.

Rotação X · rotation_x

**Onde:** Inspector → **Parent Constraint** → **Rotação** → **Rotação X**. **Uso e efeito:** Rotação autorada do sistema na unidade indicada, eixo X. **Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.

Rotação Y · rotation_y

**Onde:** Inspector → **Parent Constraint** → **Rotação** → **Rotação Y**. **Uso e efeito:** Rotação autorada do sistema na unidade indicada, eixo Y. **Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.

Rotação Z · rotation_z

**Onde:** Inspector → **Parent Constraint** → **Rotação** → **Rotação Z**. **Uso e efeito:** Rotação autorada do sistema na unidade indicada, eixo Z. **Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso. ## Roadmap deste componente [Restrições e molas](/pt-br/snapshot-2026-10-06/roadmap/restricoes-e-molas/). Consolidar autoria de fontes, limites de composição e aceite de lifecycle/pose por família. Não há cronograma individual publicado para cada setter. A presença de uma restrição não implica suporte a toda a família de constraints da Unity. 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 **Parent Constraint** 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/class-ParentConstraint.html). Essa referência não representa paridade funcional.