Junta 2D
Fixed/Weld, Revolute, Prismatic ou Distance reais
Família: Física 2D · Grupo: Juntas · Identificador: astra.physics2d.joint · Payload: 1
Para que usar
Seção intitulada “Para que usar”Fixed/Weld, Revolute, Prismatic ou Distance reais
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
Seção intitulada “Criar e configurar”Hierarquia → selecione o objeto → Inspector → Adicionar componente → Física 2D / Juntas → Junta 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.Joint2D.
Exemplo de uso
Seção intitulada “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
Seção intitulada “Dependências”- Corpo 2D: Adicione Body2D ao objeto
Conflitos
Seção intitulada “Conflitos”Nenhuma regra adicional declarada no schema deste componente.
Edição e ciclo de vida
Seção intitulada “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.
Propriedades
Seção intitulada “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.
Anchors
Seção intitulada “Anchors”| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
Anchor A Xanchor_a_x |
número · m | 0 | -1000 … 1000 |
Anchor A Yanchor_a_y |
número · m | 0 | -1000 … 1000 |
Anchor B Xanchor_b_x |
número · m | 0 | -1000 … 1000 |
Anchor B Yanchor_b_y |
número · m | 0 | -1000 … 1000 |
Anchor A X · anchor_a_x
Onde: Inspector → Junta 2D → Anchors → Anchor A X.
Uso e efeito: Posição da âncora no frame do corpo A, componente X. Configure os dois frames compatíveis.
Valor: 0 · Tipo: número · Unidade: m · Domínio: -1000 … 1000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Anchor A Y · anchor_a_y
Onde: Inspector → Junta 2D → Anchors → Anchor A Y.
Uso e efeito: Posição da âncora no frame do corpo A, componente Y. Configure os dois frames compatíveis.
Valor: 0 · Tipo: número · Unidade: m · Domínio: -1000 … 1000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Anchor B X · anchor_b_x
Onde: Inspector → Junta 2D → Anchors → Anchor B X.
Uso e efeito: Posição da âncora no frame do corpo B, componente X. Configure os dois frames compatíveis.
Valor: 0 · Tipo: número · Unidade: m · Domínio: -1000 … 1000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Anchor B Y · anchor_b_y
Onde: Inspector → Junta 2D → Anchors → Anchor B Y.
Uso e efeito: Posição da âncora no frame do corpo B, componente Y. Configure os dois frames compatíveis.
Valor: 0 · Tipo: número · Unidade: m · Domínio: -1000 … 1000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Ajustes
Seção intitulada “Ajustes”| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
Ângulo referênciareference_angle_degrees |
número · graus | 0 | -180 … 180 |
Eixo local Aaxis_angle_degrees |
número · graus | 0 | -180 … 180 |
Comprimento repousolength |
número · m | 1 | 0.005 … 1000 |
Comprimento mínimomin_length |
número · m | 0.005 | 0.005 … 1000 |
Comprimento máximomax_length |
número · m | 100 | 0.005 … 1000 |
Limite inferiorlower_limit |
número | -1 | -178 … 178 |
Limite superiorupper_limit |
número | 1 | -178 … 178 |
Velocidade motormotor_speed |
número · m/s | 1 | -1000 … 1000 |
Motor angularmotor_angular_speed_degrees |
número · graus/s | 90 | -36000 … 36000 |
Força máxima motormax_motor_force |
número · N | 100 | 0 … 1000000 |
Torque máximo motormax_motor_torque |
número · N m | 100 | 0 … 1000000 |
Frequência molaspring_hertz |
número · Hz | 5 | 0 … 120 |
Razão amortecimentospring_damping |
número | 0.7 | 0 … 10 |
Translação alvospring_target_translation |
número · m | 0 | -1000 … 1000 |
Ângulo alvospring_target_angle_degrees |
número · graus | 0 | -180 … 180 |
Mola linear weldlinear_hertz |
número · Hz | 0 | 0 … 120 |
Mola angular weldangular_hertz |
número · Hz | 0 | 0 … 120 |
Amortecimento linear weldlinear_damping_ratio |
número | 1 | 0 … 10 |
Amortecimento angular weldangular_damping_ratio |
número | 1 | 0 … 10 |
Limiteslimit_enabled |
booleano | falso | verdadeiro | falso |
Motormotor_enabled |
booleano | falso | verdadeiro | falso |
Molaspring_enabled |
booleano | falso | verdadeiro | falso |
Ângulo referência · reference_angle_degrees
Onde: Inspector → Junta 2D → Ajustes → Ângulo referência.
Uso e efeito: Ângulo de referência relativo da junta 2D em graus.
Valor: 0 · Tipo: número · Unidade: graus · Domínio: -180 … 180.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Eixo local A · axis_angle_degrees
Onde: Inspector → Junta 2D → Ajustes → Eixo local A.
Uso e efeito: Direção do eixo da junta 2D em graus.
Valor: 0 · Tipo: número · Unidade: graus · Domínio: -180 … 180.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Comprimento repouso · length
Onde: Inspector → Junta 2D → Ajustes → Comprimento repouso.
Uso e efeito: Comprimento de referência da junta Distance.
Valor: 1 · Tipo: número · Unidade: m · Domínio: 0.005 … 1000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Comprimento mínimo · min_length
Onde: Inspector → Junta 2D → Ajustes → Comprimento mínimo.
Uso e efeito: Comprimento mínimo da junta Distance.
Valor: 0.005 · Tipo: número · Unidade: m · Domínio: 0.005 … 1000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Comprimento máximo · max_length
Onde: Inspector → Junta 2D → Ajustes → Comprimento máximo.
Uso e efeito: Comprimento máximo da junta Distance.
Valor: 100 · Tipo: número · Unidade: m · Domínio: 0.005 … 1000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Limite inferior · lower_limit
Onde: Inspector → Junta 2D → Ajustes → Limite inferior.
Uso e efeito: Limite inferior da junta 2D.
Valor: -1 · Tipo: número · Domínio: -178 … 178.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Limite superior · upper_limit
Onde: Inspector → Junta 2D → Ajustes → Limite superior.
Uso e efeito: Limite superior da junta 2D.
Valor: 1 · Tipo: número · Domínio: -178 … 178.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Velocidade motor · motor_speed
Onde: Inspector → Junta 2D → Ajustes → Velocidade motor.
Uso e efeito: Velocidade linear alvo do motor da junta 2D.
Valor: 1 · Tipo: número · Unidade: m/s · Domínio: -1000 … 1000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Motor angular · motor_angular_speed_degrees
Onde: Inspector → Junta 2D → Ajustes → Motor angular.
Uso e efeito: Velocidade angular alvo do motor 2D em graus/s.
Valor: 90 · Tipo: número · Unidade: graus/s · Domínio: -36000 … 36000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Força máxima motor · max_motor_force
Onde: Inspector → Junta 2D → Ajustes → Força máxima motor.
Uso e efeito: Limite de força do motor linear 2D.
Valor: 100 · Tipo: número · Unidade: N · Domínio: 0 … 1000000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Torque máximo motor · max_motor_torque
Onde: Inspector → Junta 2D → Ajustes → Torque máximo motor.
Uso e efeito: Limite de torque do motor angular 2D.
Valor: 100 · Tipo: número · Unidade: N m · Domínio: 0 … 1000000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Frequência mola · spring_hertz
Onde: Inspector → Junta 2D → Ajustes → Frequência mola.
Uso e efeito: Frequência da mola 2D.
Valor: 5 · Tipo: número · Unidade: Hz · Domínio: 0 … 120.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Razão amortecimento · spring_damping
Onde: Inspector → Junta 2D → Ajustes → Razão amortecimento.
Uso e efeito: Amortecimento da mola da junta.
Valor: 0.7 · Tipo: número · Domínio: 0 … 10.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Translação alvo · spring_target_translation
Onde: Inspector → Junta 2D → Ajustes → Translação alvo.
Uso e efeito: Translação alvo da mola 2D.
Valor: 0 · Tipo: número · Unidade: m · Domínio: -1000 … 1000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Ângulo alvo · spring_target_angle_degrees
Onde: Inspector → Junta 2D → Ajustes → Ângulo alvo.
Uso e efeito: Ângulo alvo da mola 2D.
Valor: 0 · Tipo: número · Unidade: graus · Domínio: -180 … 180.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Mola linear weld · linear_hertz
Onde: Inspector → Junta 2D → Ajustes → Mola linear weld.
Uso e efeito: Frequência da ligação linear 2D.
Valor: 0 · Tipo: número · Unidade: Hz · Domínio: 0 … 120.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Mola angular weld · angular_hertz
Onde: Inspector → Junta 2D → Ajustes → Mola angular weld.
Uso e efeito: Frequência da ligação angular 2D.
Valor: 0 · Tipo: número · Unidade: Hz · Domínio: 0 … 120.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Amortecimento linear weld · linear_damping_ratio
Onde: Inspector → Junta 2D → Ajustes → Amortecimento linear weld.
Uso e efeito: Razão de amortecimento linear 2D.
Valor: 1 · Tipo: número · Domínio: 0 … 10.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Amortecimento angular weld · angular_damping_ratio
Onde: Inspector → Junta 2D → Ajustes → Amortecimento angular weld.
Uso e efeito: Razão de amortecimento angular 2D.
Valor: 1 · Tipo: número · Domínio: 0 … 10.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Limites · limit_enabled
Onde: Inspector → Junta 2D → Ajustes → Limites.
Uso e efeito: Ativa os limites configurados da junta 2D.
Valor: falso · Tipo: booleano · Domínio: verdadeiro | falso.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Motor · motor_enabled
Onde: Inspector → Junta 2D → Ajustes → Motor.
Uso e efeito: Ativa motor da junta 2D.
Valor: falso · Tipo: booleano · Domínio: verdadeiro | falso.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Mola · spring_enabled
Onde: Inspector → Junta 2D → Ajustes → Mola.
Uso e efeito: Ativa mola da junta 2D.
Valor: falso · Tipo: booleano · Domínio: verdadeiro | falso.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Conexão
Seção intitulada “Conexão”| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
Ativoenabled |
booleano | verdadeiro | verdadeiro | falso |
Conectar ao mundoworld_anchor |
booleano | falso | verdadeiro | falso |
Colidir conectadoscollide_connected |
booleano | falso | verdadeiro | falso |
Modokind |
enumeração | Fixed / Weld | Fixed / Weld | Revolute | Prismatic | Distance |
Corpo conectadotarget |
referência | Escolher Body2D | astra.physics2d.body · outro objeto |
Ativo · enabled
Onde: Inspector → Junta 2D → Conexã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.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Conectar ao mundo · world_anchor
Onde: Inspector → Junta 2D → Conexão → Conectar ao mundo.
Uso e efeito: Interpreta a âncora conforme a opção de mundo da junta 2D.
Valor: falso · Tipo: booleano · Domínio: verdadeiro | falso.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Colidir conectados · collide_connected
Onde: Inspector → Junta 2D → Conexão → Colidir conectados.
Uso e efeito: Permite colisão entre os corpos conectados.
Valor: falso · Tipo: booleano · Domínio: verdadeiro | falso.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Modo · kind
Onde: Inspector → Junta 2D → Conexão → Modo.
Uso e efeito: Escolhe a variante de luz/junta no domínio indicado; siga os campos e requisitos condicionais.
Valor: Fixed / Weld · Tipo: enumeração · Domínio: Fixed / Weld | Revolute | Prismatic | Distance.
Corpo conectado · target
Onde: Inspector → Junta 2D → Conexão → Corpo conectado.
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 Body2D · Tipo: referência · Domínio: astra.physics2d.body · outro objeto.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Roadmap deste componente
Seção intitulada “Roadmap deste componente”Física 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
Seção intitulada “Conferir na sua cena”- Crie Junta 2D pelo fluxo indicado e resolva as dependências.
- Altere uma propriedade por vez e observe o efeito esperado na cena.
- Salve, reabra e confira os valores autorais.
- Entre em Play e verifique o comportamento com os recursos reais do projeto.
- 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
Seção intitulada “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. Essa referência não representa paridade funcional.