-
A função AddTorque é parecida com a
-
AddForce, mas a força rotaciona
-
um gameobject em volta de um eixo definido
-
AddTorque possui dois componentes,
-
o segundo é opcional. O primeiro é
-
um vetor que define o eixo no qual
-
o torque será aplicado e a
-
magnitude do torque aplicado.
-
Nesse exemplo, nosso cubo de força
-
tem um script atribuído.
-
Estamos usando a função AddTorque
-
e especificando que transform.up,
-
a direção para cima do objeto, será
-
o eixo ao qual será adicionado torque.
-
Como o Unity usa a regra da mão esquerda
-
em parafuso o torque será adicionado neste
-
eixo como mostrado neste diagrama.
-
Tente fazer um sinal de positivo com
-
sua mão esquerda. Então imagine
-
que o torque é adicionado na direção
-
que seus dedos curvados apontam.
-
Aqui nos simplesmente multiplicamos pela
-
variável H, que é a variável usada para
-
receber a entrada do eixo horizontal,
-
multiplicado pela quantidade variável
-
pelo tempo. Na outra linha AddTorque
-
estamos aplicando ao eixo transform.right.
-
O eixo local X do objeto.
-
Vamos vê-lo em ação.
-
Quando pressiono as teclas horizontais
-
posso aplicar o torque e, como você pode ver
-
após o torque ser aplicado e a tecla
-
solta, a inércia vai continuar o movimento
-
pois isso faz parte da
-
simulação da física.
-
A mesma coisa posso aplicar ao eixo X
-
e por ser local o cubo vai girar em volta
-
deste eixo em qualquer
-
lugar que esteja.
-
Você deve notar que o componente
-
Angular Drag do rigidbody define a
-
efetividade do torque
-
quando aplicado ao objeto.
-
Por exemplo, posso aplicar muito torque em
-
volta deste eixo, deixá-lo girando sob
-
inércia, mas quando aumento o Angular Drag
-
se torna bem mais difícil de movimentar o
-
objeto por causa do Angular Drag.
-
Se não temos valor para o Angular Drag
-
é fácil de manter o objeto girando numa
-
direção em particular porque há bem
-
pouco Drag para retardá-lo.
-
O segundo parâmetro é opcional.
-
Usado para definir o tipo de força
-
que será aplicada.
-
Se deixado em branco, manterá
-
o tipo de força padrão.
-
Isso é utilizado para mudanças contínuas
-
que são afetadas pela massa.
-
Acceleration é usada para mudanças
-
contínuas não afetadas pela massa.
-
Impulse para mudança instantânea que
-
é afetada pela massa.
-
E VelocityChange para mudança instantânea
-
que não é afetada pela massa.
-
Veremos o efeito de adicionar isso ao script
-
Agora, quando rotacionar o cubo
-
quando pressiono a tecla oposta para
-
aplicar o torque na direção oposta, ele
-
responde muito mais rapidamente.
-
Então vale a pena sempre considerar o tipo
-
de força aplicado ao torque.