Os materiais didáticos aqui disponibilizados estão licenciados através de Creative Commons Atribuição-SemDerivações-SemDerivados CC BY-NC-ND. Você possui a permissão para visualizar e compartilhar, desde que atribua os créditos do autor. Não poderá alterá-los e nem utilizá-los para fins comerciais.
Atribuição-SemDerivações-SemDerivados
CC BY-NC-ND
Cursos / Jogos Digitais / Desenvolvimento com Motores de Jogos I / Aula
Ok! Conseguimos recuperar o nosso Rigidbody... agora falta empurrar! E para empurrar a gente conversou que utilizaríamos a entrada do teclado como método para tal. Os eixos Vertical e Horizontal para ser mais preciso. E aí, na sequência, precisamos apenas adicionar a física... mas aí tem um detalhe!
Anteriormente falamos sobre com o método Update é bom para receber inputs, correto? Mas para lidar com física, nem sempre ele é o melhor caminho. Não vamos entrar em muitos detalhes agora, uma vez que essa aula já está bem densa, mas fique sabendo que há um irmão muito próximo dele chamado de FixedUpdate que consegue lidar muito bem com os dois! O FixedUpdate não é chamado exatamente a cada frame, mas é chamado em um intervalo fixo que permite que você trabalhe ainda com fluidez respeitando bem a parte física. Então vamos pegar os nossos comandos nesse método! O código modificado fica como visto na Listagem 3.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayerController : MonoBehaviour {
private Rigidbody2D rigidBody;
// Use this for initialization
void Start () {
rigidBody = GetComponent<Rigidbody2D> ();
}
//Chamado em um intervalo fixo, independente do FrameRate
void FixedUpdate()
{
float moverV = Input.GetAxis ("Vertical");
float moverH = Input.GetAxis ("Horizontal");
}
}
Veja que nesse passo alteramos a nossa função Update para FixedUpdate e também adicionamos duas novas variáveis moverV e moverH que guardam os valores dos eixos Vertical e Horizontal que são obtidos através da função que já havíamos visto Input.GetAxis("EIXO"). Como esses eixos são padrão do Unity, nem precisamos nos preocupar em fazer as configurações de project settings, como havíamos discutido anteriormente.
Versão 5.3 - Todos os Direitos reservados