--- title: "Path" 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-path/ --- # Path Curva Bézier local com pontos persistentes **Família:** Lógica · **Grupo:** Caminhos · **Identificador:** `astra.path` · **Payload:** 2 :::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 Curva Bézier local com pontos persistentes Crie Path com pontos/tangentes persistentes e atribua o objeto ao Path Follow. Distância e orientação dependem da curva e da pose mundial. ## Criar e configurar Hierarquia → selecione o objeto → Inspector → Adicionar componente → **Lógica** / **Caminhos** → **Path**. O schema permite uma única instância desse tipo por objeto. A fachada C# correspondente é [Astra.Components.PathComponent](/pt-br/snapshot-2026-10-06/api/astra-components-pathcomponent/). ## Exemplo de uso Autore uma curva com três pontos, atribua o alvo e percorra em velocidade constante; salve/reabra os pontos e compare orientação +Z e direção reversa. ## 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 | 2 | 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. ### Orientação | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Up X**](#field-up-x)
`up_x` | número | 0 | -100000 … 100000 | | [**Up Y**](#field-up-y)
`up_y` | número | 1 | -100000 … 100000 | | [**Up Z**](#field-up-z)
`up_z` | número | 0 | -100000 … 100000 | | [**Roll**](#field-point-roll)
`point_roll` | número · °
Por slot | Depende do contexto | -3600 … 3600 |

Up X · up_x

**Onde:** Inspector → **Path** → **Orientação** → **Up X**. **Uso e efeito:** Up inicial local; vetor zero é inválido. **Valor:** 0 · **Tipo:** número · **Domínio:** -100000 … 100000.

Up Y · up_y

**Onde:** Inspector → **Path** → **Orientação** → **Up Y**. **Uso e efeito:** Vetor vertical inicial do frame do caminho; vetor total zero é inválido, eixo Y. **Valor:** 1 · **Tipo:** número · **Domínio:** -100000 … 100000.

Up Z · up_z

**Onde:** Inspector → **Path** → **Orientação** → **Up Z**. **Uso e efeito:** Vetor vertical inicial do frame do caminho; vetor total zero é inválido, eixo Z. **Valor:** 0 · **Tipo:** número · **Domínio:** -100000 … 100000.

Roll · point_roll

**Onde:** Inspector → **Path** → **Orientação** → **Roll** → escolha o slot/recurso. **Uso e efeito:** Ângulo contínuo, sem reduzir módulo 360. **Valor:** dependente do contexto · **Tipo:** número · **Unidade:** ° · **Domínio:** -3600 … 3600. ### Caminho | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Fechado**](#field-closed)
`closed` | booleano | falso | verdadeiro \| falso |

Fechado · closed

**Onde:** Inspector → **Path** → **Caminho** → **Fechado**. **Uso e efeito:** Fecha a curva ligando o último ponto ao primeiro. **Valor:** falso · **Tipo:** booleano · **Domínio:** verdadeiro \| falso. ### Posição | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Posição X**](#field-point-position-x)
`point_position_x` | número · u
Por slot | Depende do contexto | -100000 … 100000 | | [**Posição Y**](#field-point-position-y)
`point_position_y` | número · u
Por slot | Depende do contexto | -100000 … 100000 | | [**Posição Z**](#field-point-position-z)
`point_position_z` | número · u
Por slot | Depende do contexto | -100000 … 100000 |

Posição X · point_position_x

**Onde:** Inspector → **Path** → **Posição** → **Posição X** → escolha o slot/recurso. **Uso e efeito:** Posição local do ponto selecionado da curva, eixo X. **Valor:** dependente do contexto · **Tipo:** número · **Unidade:** u · **Domínio:** -100000 … 100000.

Posição Y · point_position_y

**Onde:** Inspector → **Path** → **Posição** → **Posição Y** → escolha o slot/recurso. **Uso e efeito:** Posição local do ponto selecionado da curva, eixo Y. **Valor:** dependente do contexto · **Tipo:** número · **Unidade:** u · **Domínio:** -100000 … 100000.

Posição Z · point_position_z

**Onde:** Inspector → **Path** → **Posição** → **Posição Z** → escolha o slot/recurso. **Uso e efeito:** Posição local do ponto selecionado da curva, eixo Z. **Valor:** dependente do contexto · **Tipo:** número · **Unidade:** u · **Domínio:** -100000 … 100000. ### Tangentes | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Entrada X**](#field-point-in-x)
`point_in_x` | número · u
Por slot | Depende do contexto | -100000 … 100000 | | [**Entrada Y**](#field-point-in-y)
`point_in_y` | número · u
Por slot | Depende do contexto | -100000 … 100000 | | [**Entrada Z**](#field-point-in-z)
`point_in_z` | número · u
Por slot | Depende do contexto | -100000 … 100000 | | [**Saída X**](#field-point-out-x)
`point_out_x` | número · u
Por slot | Depende do contexto | -100000 … 100000 | | [**Saída Y**](#field-point-out-y)
`point_out_y` | número · u
Por slot | Depende do contexto | -100000 … 100000 | | [**Saída Z**](#field-point-out-z)
`point_out_z` | número · u
Por slot | Depende do contexto | -100000 … 100000 |

Entrada X · point_in_x

**Onde:** Inspector → **Path** → **Tangentes** → **Entrada X** → escolha o slot/recurso. **Uso e efeito:** Tangente de entrada do ponto selecionado da curva, eixo X. **Valor:** dependente do contexto · **Tipo:** número · **Unidade:** u · **Domínio:** -100000 … 100000.

Entrada Y · point_in_y

**Onde:** Inspector → **Path** → **Tangentes** → **Entrada Y** → escolha o slot/recurso. **Uso e efeito:** Tangente de entrada do ponto selecionado da curva, eixo Y. **Valor:** dependente do contexto · **Tipo:** número · **Unidade:** u · **Domínio:** -100000 … 100000.

Entrada Z · point_in_z

**Onde:** Inspector → **Path** → **Tangentes** → **Entrada Z** → escolha o slot/recurso. **Uso e efeito:** Tangente de entrada do ponto selecionado da curva, eixo Z. **Valor:** dependente do contexto · **Tipo:** número · **Unidade:** u · **Domínio:** -100000 … 100000.

Saída X · point_out_x

**Onde:** Inspector → **Path** → **Tangentes** → **Saída X** → escolha o slot/recurso. **Uso e efeito:** Tangente de saída do ponto selecionado da curva, eixo X. **Valor:** dependente do contexto · **Tipo:** número · **Unidade:** u · **Domínio:** -100000 … 100000.

Saída Y · point_out_y

**Onde:** Inspector → **Path** → **Tangentes** → **Saída Y** → escolha o slot/recurso. **Uso e efeito:** Tangente de saída do ponto selecionado da curva, eixo Y. **Valor:** dependente do contexto · **Tipo:** número · **Unidade:** u · **Domínio:** -100000 … 100000.

Saída Z · point_out_z

**Onde:** Inspector → **Path** → **Tangentes** → **Saída Z** → escolha o slot/recurso. **Uso e efeito:** Tangente de saída do ponto selecionado da curva, eixo Z. **Valor:** dependente do contexto · **Tipo:** número · **Unidade:** u · **Domínio:** -100000 … 100000. ## Roadmap deste componente [Caminhos e seguidores](/pt-br/snapshot-2026-10-06/roadmap/caminhos/). Aprofundar ferramentas de pontos/tangentes, visualização e cenários de escala/lifecycle. Path não é navmesh, pathfinding ou spline universal importada. 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 **Path** 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.godotengine.org/en/4.5/classes/class_path3d.html). Essa referência não representa paridade funcional.