Menu
CoddyTech

Pular com um Impulso

Parte da seção Física e jogabilidade do Journey de Unity da Coddy. Lição 3 de 63.

AddForce recebe um segundo argumento, um ForceMode, que indica como usar o vetor. Sem ele, você obtém ForceMode.Force, um empurrão que dura uma etapa de física, então ele precisa ser adicionado etapa após etapa. Um chute, um salto ou uma explosão acontece de uma só vez, e esse é o ForceMode.Impulse: todo o empurrão de uma vez, alterando a velocidade pelo impulso dividido pela massa.

Esta bola de futebol (0.5 kg) é chutada ao clicar. Sua velocidade aumenta em (0, 2, 6) / 0.5 = (0, 4, 12) m/s na próxima etapa de física, e a gravidade e a grama assumem o controle a partir daí:

void Update()
{
    if (Input.GetMouseButtonDown(0))
    {
        rb.AddForce(new Vector3(0, 2, 6), ForceMode.Impulse);
    }
}

Um empurrão único pode ser chamado de Update(), no quadro em que ocorre o clique: o Unity o mantém e o aplica na próxima etapa de física. Os quatro modos diferem de duas maneiras: de uma só vez ou ao longo de uma etapa, e com ou sem considerar a massa:

  • Force: ao longo de uma etapa, dividido pela massa (motores, vento).
  • Acceleration: ao longo de uma etapa, massa ignorada.
  • Impulse: tudo de uma só vez, dividido pela massa (chutes, saltos).
  • VelocityChange: tudo de uma só vez, massa ignorada: o vetor é adicionado diretamente à velocidade.
challenge icon

Desafio

Fácil

Faça o sapo pular. Cada toque na tecla Espaço dá a ele um impulso para cima de jumpImpulse (10 no Inspector). O sapo pesa 2 kg, e o salto deve levar sua massa em conta: um sapo mais pesado pula menos alto.

Manter a tecla Espaço pressionada ainda conta como um único salto. Pressione Jogar e faça o sapo pular, depois pressione Verificar.

Experimente você mesmo

using UnityEngine;

public class FrogJump : MonoBehaviour
{
    public float jumpImpulse = 10f;
    private Rigidbody rb;

    void Start()
    {
        rb = GetComponent<Rigidbody>();
    }

    void Update()
    {
        // Space: um impulso para cima de jumpImpulse
    }
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Física e jogabilidade