--- title: "Path Follow" 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-follow/ --- # Path Follow Percorre curva em distância mundial e orienta +Z **Família:** Lógica · **Grupo:** Caminhos · **Identificador:** `astra.path.follow` · **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 Percorre curva em distância mundial e orienta +Z 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 Follow**. O schema permite uma única instância desse tipo por objeto. A fachada C# correspondente é [Astra.Components.PathFollow](/pt-br/snapshot-2026-10-06/api/astra-components-pathfollow/). ## 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 | 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. ### Percurso | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Distância inicial**](#field-progress-distance)
`progress_distance` | número · u | 0 | 0 … 1000000 | | [**Velocidade**](#field-speed)
`speed` | número · u/s | 1 | 0 … 100000 | | [**Duração**](#field-duration)
`duration` | número · s | 5 | 0.001 … 100000 | | [**Avanço**](#field-mode)
`mode` | enumeração | Velocidade mundial | Velocidade mundial \| Duração do percurso | | [**Caminho**](#field-target)
`target` | referência | Escolher Path | astra.path · outro objeto |

Distância inicial · progress_distance

**Onde:** Inspector → **Path Follow** → **Percurso** → **Distância inicial**. **Uso e efeito:** Distância inicial mundial ao longo da curva. **Valor:** 0 · **Tipo:** número · **Unidade:** u · **Domínio:** 0 … 1000000. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Velocidade · speed

**Onde:** Inspector → **Path Follow** → **Percurso** → **Velocidade**. **Uso e efeito:** Velocidade de reprodução/percurso/motor na unidade do componente. **Valor:** 1 · **Tipo:** número · **Unidade:** u/s · **Domínio:** 0 … 100000. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Duração · duration

**Onde:** Inspector → **Path Follow** → **Percurso** → **Duração**. **Uso e efeito:** Tempo para completar o percurso no modo por duração; modo velocidade usa Speed. **Valor:** 5 · **Tipo:** número · **Unidade:** s · **Domínio:** 0.001 … 100000. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Avanço · mode

**Onde:** Inspector → **Path Follow** → **Percurso** → **Avanço**. **Uso e efeito:** Seleciona o modo do componente no domínio indicado; revise os campos que aparecem após trocar. **Valor:** Velocidade mundial · **Tipo:** enumeração · **Domínio:** Velocidade mundial \| Duração do percurso.

Caminho · target

**Onde:** Inspector → **Path Follow** → **Percurso** → **Caminho**. **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 Path · **Tipo:** referência · **Domínio:** astra.path · outro objeto. ### Orientação | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Deslocamento lateral**](#field-offset-x)
`offset_x` | número · u | 0 | -10000 … 10000 | | [**Deslocamento vertical**](#field-offset-y)
`offset_y` | número · u | 0 | -10000 … 10000 | | [**Deslocamento tangente**](#field-offset-z)
`offset_z` | número · u | 0 | -10000 … 10000 | | [**Orientar +Z**](#field-orient)
`orient` | booleano | verdadeiro | verdadeiro \| falso |

Deslocamento lateral · offset_x

**Onde:** Inspector → **Path Follow** → **Orientação** → **Deslocamento lateral**. **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. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Deslocamento vertical · offset_y

**Onde:** Inspector → **Path Follow** → **Orientação** → **Deslocamento vertical**. **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. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Deslocamento tangente · offset_z

**Onde:** Inspector → **Path Follow** → **Orientação** → **Deslocamento tangente**. **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. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Orientar +Z · orient

**Onde:** Inspector → **Path Follow** → **Orientação** → **Orientar +Z**. **Uso e efeito:** Alinha orientação ao frame do caminho. **Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso. ### Execução | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Ativo**](#field-enabled)
`enabled` | booleano | verdadeiro | verdadeiro \| falso | | [**Iniciar no Play**](#field-autoplay)
`autoplay` | booleano | verdadeiro | verdadeiro \| falso | | [**Repetir percurso**](#field-loop)
`loop` | booleano | falso | verdadeiro \| falso | | [**Sentido inverso**](#field-backwards)
`backwards` | booleano | falso | verdadeiro \| falso |

Ativo · enabled

**Onde:** Inspector → **Path Follow** → **Execução** → **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.

Iniciar no Play · autoplay

**Onde:** Inspector → **Path Follow** → **Execução** → **Iniciar no Play**. **Uso e efeito:** Inicia a reprodução automaticamente ao ativar a execução; não é o mesmo que repetição. **Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.

Repetir percurso · loop

**Onde:** Inspector → **Path Follow** → **Execução** → **Repetir percurso**. **Uso e efeito:** Repete a reprodução/percurso no fim. **Valor:** falso · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.

Sentido inverso · backwards

**Onde:** Inspector → **Path Follow** → **Execução** → **Sentido inverso**. **Uso e efeito:** Percorre a curva na direção reversa. **Valor:** falso · **Tipo:** booleano · **Domínio:** verdadeiro \| falso. ## 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 Follow** 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_pathfollow3d.html). Essa referência não representa paridade funcional.