Pular para o conteúdo
AstraDOCS

Corpo físico

Massa e resposta física

Família: Física 3D · Grupo: Corpos · Identificador: astra.physics.body · Payload: 4

Selecione o objeto na Hierarquia, abra Adicionar componente e procure Corpo físico, na família Física 3D. Confira os requisitos antes de confirmar a composição.

O schema permite uma única instância desse tipo por objeto. A fachada C# correspondente é Astra.Components.PhysicsBody.

Nenhuma regra adicional declarada no schema deste componente.

  • Personagem: Incompatível com personagem cápsula
Operação Contrato
Adicionar/remover em Play não permitido
Alterar propriedades em Play ponto seguro
Múltiplas instâncias Não
Versão do payload 4

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.

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.

| Propriedade | Tipo / unidade | Padrão | Domínio | |—|—|—| | Massa kg
mass | número · kg | 1 | 0.01 … 1000000 | | Atrito
friction | número | 0.5 | 0 … 1 | | Restituição
restitution | número | 0 | 0 … 1 | | Sensor sem resposta
sensor | booleano | falso | verdadeiro | falso | | Permitir repouso
allow_sleep | booleano | verdadeiro | verdadeiro | falso | | Movimento
motion | enumeração | Estático | Estático | Cinemático | Dinâmico |

mass: A exibição depende do estado do componente.

allow_sleep: A exibição depende do estado do componente.

| Propriedade | Tipo / unidade | Padrão | Domínio | |—|—|—| | Velocidade inicial X
velocity_x | número · m/s | 0 | -1000 … 1000 | | Velocidade inicial Y
velocity_y | número · m/s | 0 | -1000 … 1000 | | Velocidade inicial Z
velocity_z | número · m/s | 0 | -1000 … 1000 | | Giro inicial X · rad/s
angular_x | número · rad/s | 0 | -1000 … 1000 | | Giro inicial Y · rad/s
angular_y | número · rad/s | 0 | -1000 … 1000 | | Giro inicial Z · rad/s
angular_z | número · rad/s | 0 | -1000 … 1000 |

velocity_x: A exibição depende do estado do componente.

velocity_y: A exibição depende do estado do componente.

velocity_z: A exibição depende do estado do componente.

angular_x: A exibição depende do estado do componente.

angular_y: A exibição depende do estado do componente.

angular_z: A exibição depende do estado do componente.

| Propriedade | Tipo / unidade | Padrão | Domínio | |—|—|—| | Amortecimento linear
linear_damping | número | 0.05 | 0 … 10 | | Amortecimento angular
angular_damping | número | 0.05 | 0 … 10 | | Multiplicador da gravidade
gravity_factor | número | 1 | -100 … 100 |

linear_damping: A exibição depende do estado do componente.

angular_damping: A exibição depende do estado do componente.

gravity_factor: A exibição depende do estado do componente.

| Propriedade | Tipo / unidade | Padrão | Domínio | |—|—|—| | Limite linear
max_linear_velocity | número · m/s | 500 | 0.001 … 100000 | | Limite angular
max_angular_velocity | número · rad/s | 47.12389 | 0.001 … 100000 | | Iterações de velocidade
solver_velocity_steps | número | 0 | 0 … 255 | | Colisão contínua
continuous_collision | booleano | falso | verdadeiro | falso |

max_linear_velocity: A exibição depende do estado do componente.

max_angular_velocity: A exibição depende do estado do componente.

solver_velocity_steps: 0 usa as iterações do mundo; aumenta custo por ilha de contato A exibição depende do estado do componente.

continuous_collision: Varredura linear Jolt; não detecta varredura apenas angular A exibição depende do estado do componente.

| Propriedade | Tipo / unidade | Padrão | Domínio | |—|—|—| | Travar posição X
freeze_position_x | booleano | falso | verdadeiro | falso | | Travar posição Y
freeze_position_y | booleano | falso | verdadeiro | falso | | Travar posição Z
freeze_position_z | booleano | falso | verdadeiro | falso | | Travar rotação X
freeze_rotation_x | booleano | falso | verdadeiro | falso | | Travar rotação Y
freeze_rotation_y | booleano | falso | verdadeiro | falso | | Travar rotação Z
freeze_rotation_z | booleano | falso | verdadeiro | falso |

freeze_position_x: Eixos do mundo; bloquear todos exige corpo estático A exibição depende do estado do componente.

freeze_position_y: Eixos do mundo; bloquear todos exige corpo estático A exibição depende do estado do componente.

freeze_position_z: Eixos do mundo; bloquear todos exige corpo estático A exibição depende do estado do componente.

freeze_rotation_x: Eixos do mundo; bloquear todos exige corpo estático A exibição depende do estado do componente.

freeze_rotation_y: Eixos do mundo; bloquear todos exige corpo estático A exibição depende do estado do componente.

freeze_rotation_z: Eixos do mundo; bloquear todos exige corpo estático A exibição depende do estado do componente.

  1. Crie Corpo físico 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.

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. Essa referência não representa paridade funcional.