--- title: "Colisor 2D" version: snapshot-2026-10-07 engineGeneration: astra-current language: C# status: source-reviewed reviewedAt: 2026-10-07 appRelease: "0.2.3-preview.20261007" runtimeVerified: false platformEvidence: [] url: https://astraengine.com.br/pt-br/snapshot-2026-10-07/componentes/astra-physics2d-collider/ --- # Colisor 2D Caixa, círculo ou cápsula; sensor real **Família:** Física 2D · **Grupo:** Formas · **Identificador:** `astra.physics2d.collider` · **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 Caixa, círculo ou cápsula; sensor real Monte Body2D + Colisor 2D no plano XY. Juntas, forças e campos 2D operam nessa simulação; não compartilham automaticamente contatos com corpos 3D. ## Criar e configurar Hierarquia → selecione o objeto → Inspector → Adicionar componente → **Física 2D** / **Formas** → **Colisor 2D**. O schema permite múltiplas instâncias no mesmo objeto; identifique a instância antes de editar ou remover. A fachada C# correspondente é [Astra.Components.Collider2D](/pt-br/snapshot-2026-10-07/api/astra-components-collider2d/). ## Exemplo de uso Coloque uma caixa 2D dinâmica sobre um chão 2D estático. Compare escala de gravidade e rotação travada. Conexão física 2D pode ativar um receptor ao entrar no sensor. ## Dependências Nenhuma regra adicional declarada no schema deste componente. ## Conflitos - [Corpo físico](/pt-br/snapshot-2026-10-07/componentes/astra-physics-body/): Corpos 2D e 3D não compartilham o mesmo objeto - [Personagem](/pt-br/snapshot-2026-10-07/componentes/astra-physics-character/): Personagem 3D possui a pose deste objeto - [Colisor 3D](/pt-br/snapshot-2026-10-07/componentes/astra-physics-collider/): Colisores 2D e 3D usam mundos separados ## 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 | Sim | | 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. ### Forma | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Meia largura**](#field-half-x)
`half_x` | número · m | 0.5 | 0.005 … 500 | | [**Meia altura**](#field-half-y)
`half_y` | número · m | 0.5 | 0.005 … 500 | | [**Raio**](#field-radius)
`radius` | número · m | 0.5 | 0.005 … 500 | | [**Meia distância centros**](#field-capsule-half-length)
`capsule_half_length` | número · m | 0.5 | 0.005 … 500 | | [**Centro X**](#field-offset-x)
`offset_x` | número · m | 0 | -1000 … 1000 | | [**Centro Y**](#field-offset-y)
`offset_y` | número · m | 0 | -1000 … 1000 | | [**Forma**](#field-shape)
`shape` | enumeração | Caixa | Caixa \| Círculo \| Cápsula Y |

Meia largura · half_x

**Onde:** Inspector → **Colisor 2D** → **Forma** → **Meia largura**. **Uso e efeito:** Meia extensão da caixa neste eixo, em metros. Uma extensão .5 representa tamanho total 1 nesse eixo. **Valor:** 0.5 · **Tipo:** número · **Unidade:** m · **Domínio:** 0.005 … 500. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Meia altura · half_y

**Onde:** Inspector → **Colisor 2D** → **Forma** → **Meia altura**. **Uso e efeito:** Meia extensão da caixa neste eixo, em metros. Uma extensão .5 representa tamanho total 1 nesse eixo. **Valor:** 0.5 · **Tipo:** número · **Unidade:** m · **Domínio:** 0.005 … 500. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Raio · radius

**Onde:** Inspector → **Colisor 2D** → **Forma** → **Raio**. **Uso e efeito:** Raio da forma/volume selecionado; confira o tipo e os campos condicionais. **Valor:** 0.5 · **Tipo:** número · **Unidade:** m · **Domínio:** 0.005 … 500. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Meia distância centros · capsule_half_length

**Onde:** Inspector → **Colisor 2D** → **Forma** → **Meia distância centros**. **Uso e efeito:** Metade da distância entre centros da cápsula 2D; raio é configurado separadamente. **Valor:** 0.5 · **Tipo:** número · **Unidade:** m · **Domínio:** 0.005 … 500. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Centro X · offset_x

**Onde:** Inspector → **Colisor 2D** → **Forma** → **Centro X**. **Uso e efeito:** Deslocamento do resultado/volume em relação à origem configurada, eixo X. **Valor:** 0 · **Tipo:** número · **Unidade:** m · **Domínio:** -1000 … 1000.

Centro Y · offset_y

**Onde:** Inspector → **Colisor 2D** → **Forma** → **Centro Y**. **Uso e efeito:** Deslocamento do resultado/volume em relação à origem configurada, eixo Y. **Valor:** 0 · **Tipo:** número · **Unidade:** m · **Domínio:** -1000 … 1000.

Forma · shape

**Onde:** Inspector → **Colisor 2D** → **Forma** → **Forma**. **Uso e efeito:** Escolhe a geometria do colisor/campo no domínio indicado; os campos relevantes mudam por forma. **Valor:** Caixa · **Tipo:** enumeração · **Domínio:** Caixa \| Círculo \| Cápsula Y. ### Contato | Propriedade | Tipo / unidade | Padrão | Domínio | |---|---|---|---| | [**Atrito**](#field-friction)
`friction` | número | 0.5 | 0 … 1 | | [**Restituição**](#field-restitution)
`restitution` | número | 0 | 0 … 1 | | [**Sensor sem resposta**](#field-sensor)
`sensor` | booleano | falso | verdadeiro \| falso |

Atrito · friction

**Onde:** Inspector → **Colisor 2D** → **Contato** → **Atrito**. **Uso e efeito:** Atrito nos contatos; compare deslizamento com o mesmo par de superfícies. **Valor:** 0.5 · **Tipo:** número · **Domínio:** 0 … 1. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Restituição · restitution

**Onde:** Inspector → **Colisor 2D** → **Contato** → **Restituição**. **Uso e efeito:** Restituição nos contatos; controla ressalto conforme a combinação física. **Valor:** 0 · **Tipo:** número · **Domínio:** 0 … 1. Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.

Sensor sem resposta · sensor

**Onde:** Inspector → **Colisor 2D** → **Contato** → **Sensor sem resposta**. **Uso e efeito:** Participa como sensor/sobreposição; não é uma superfície sólida de contato. **Valor:** falso · **Tipo:** booleano · **Domínio:** verdadeiro \| falso. ## Roadmap deste componente [Física 2D](/pt-br/snapshot-2026-10-06/roadmap/fisica-2d/). Fechar autoria e cenários de solver/eventos/queries no Android; ampliar formas e juntas somente com consumidores. Física 2D presente não representa renderização Sprite/Tilemap completa. 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 **Colisor 2D** 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_collisionshape2d.html). Essa referência não representa paridade funcional. ## Eventos do componente No Behavior, a fachada permite inscrever um receptor usando o owner vivo; a inscrição pertence ao lifecycle daquela execução. Uma Conexão de evento precisa de emissor, evento, receptor e ação: adicionar a conexão não define a regra do jogo. | Evento / ID | Quando ocorre | Dados enviados | |---|---|---| | **Sensor: entrou** · `trigger_enter` | Outro corpo começou a sobrepor este sensor | Outro objeto: objeto | | **Sensor: saiu** · `trigger_exit` | Outro corpo deixou de sobrepor este sensor | Outro objeto: objeto | | **Colisão: começou** · `collision_enter` | Contato sólido começou; entregue aos dois colisores | Outro objeto: objeto | | **Colisão: terminou** · `collision_exit` | Contato sólido terminou; entregue aos dois colisores | Outro objeto: objeto |