3. Usando a Engine Física - TanookiVerde/WorkshopUnity GitHub Wiki

  1. A forma mais rápida de implementar pulo na Unity é usando sua própria engine física.
  2. A gente vai dar um "corpo físico" para o dinossauro e ele automaticamente será controlado pelas leis da física (embora nosso único interesse seja na gravidade).

Adicionando um Corpo Físico

  1. No dinossauro adicione o componente Rigidbody2D (para dar as propriedades físicas) e depois um BoxCollider2D (para dar colisão).
  2. De você der Play no jogo agora verá que o personagem cai (Opa!), mas nunca para... Não tem nada para ele colidir... Falta um chão.

Criando um chão

  1. Crie um Game Object usando o sprite do chão (Veio na sprite sheet). Deixe ele selecionado para ver seus componentes. Fique atento para o componente Sprite Renderer.
  2. Mude o valor em Draw Mode para Tiled.
  3. Use a ferramenta Rect Tool para aumentar o tamanho horizontal do chão, de forma que a linha horizontal vá de um canto ao outro da tela.
  4. Ajuste a posição vertical do chão.
  5. Adicione o componente Box Collider 2D e ajuste seu tamanho. Note que ele deve ficar um pouco abaixo da linha horizontal para um efeito satisfatório.
  6. Play no jogo e veja que agora o dinossauro não passa do chão.

Preparando o primeiro Script

  1. Agora que o dinossauro já tem um corpo com gravidade, basta ele conseguir pular.
  2. Vamos criar nosso próprio componente que vai dar o comportamento de Pulo ao Dinossauro.
  3. No Hierarchy, deixe o dinossauro selecionado e, no Inspector, clique em Add Component. Digite JumpByInput e aperte Enter. Vai demorar um pouco, mas ele vai aparecer na lista.
  4. Como não existe componente com esse nome, a Unity automaticamente cria um. Ainda falta preencher como ele vai funcionar.
  5. Esse preenchimento será na linguagem de programação C#
  6. A Unity salva este Script na pasta Assets. Você pode mover ele para qualquer pasta. Vamos colocar ele em uma pasta chamada Scripts. Você terá que criar, que nem fez com a Sprites.
  7. No próximo capítulo iremos programar o comportamento.