Cursos / Jogos Digitais / Desenvolvimento com Motores de Jogos I / Aula

arrow_back Aula 03 - Movimentação - Scripts e Conceitos

Utilizando o Input no Unity

Utilização de Inputs Tradicionais no Unity

Em seguida, temos as propriedades relacionadas aos eixos em si. São diversas propriedades diferentes e cada uma com uma funcionalidade diferente. Vejamos, a seguir, a função de cada uma dessas propriedades:

  • Name - Indica o nome que o eixo receberá. Isso é importante para que possamos acessar esse eixo durante a programação.
  • DescriptiveName - Indica o nome que aparecerá para o jogador durante a etapa de configuração dos comandos. Deve ser um nome que facilite a identificação por parte do jogador para que ele possa fazer a configuração adequadamente.
  • Descriptive Negative Name - Indica o nome que aparecerá para o jogador configurar o lado negativo do eixo em questão.
  • Negative Button - Qual o botão que será utilizado por padrão para mover o eixo na direção negativa.
  • Positive Button - Qual o botão que será utilizado por padrão para mover o eixo na direção positiva.
  • Alt Negative Button - Botão alternativo para o eixo negativo.
  • Alt Positive Button - Botão alternativo para o eixo positivo.
  • Gravity - Velocidade com a qual o eixo retorna ao centro caso nenhum botão esteja sendo pressionado.
  • Dead - Caso esteja sendo utilizado um joystick analógico, essa propriedade indica o espaço que será considerado "morto", ou seja, que não haverá movimentação do eixo mesmo havendo a movimentação de leve do joystick. Isso é útil para evitar que o personagem se mova loucamente por uma pequena folga no eixo, ou um dedo descansando em cima.
  • Sensitivity - A sensibilidade indica a velocidade que o eixo vai crescer na direção apontada (positiva ou negativa). Isso funciona apenas em controles digitais, uma vez que os analógicos podem construir a sensibilidade através do próprio controle.
  • Snap - Essa caixa, ao ser ativada, indica que o eixo deve ser imediatamente zerado quando pressionado nas duas direções simultaneamente.
  • Invert - Essa opção inverte o eixo. Isso é muito utilizado em jogos de avião, por exemplo, onde pressionar o botão para cima faz o avião ir para baixo.
  • Type - Tipo de input que será utilizado para controlar o eixo.
  • Axis - O eixo do dispositivo escolhido sendo tal eixo o utilizado para controlar o eixo criado.
  • Joy Num - Se haverá algum joystick específico que controlará esse eixo, ele deve ser discriminado nessa opção. Caso não seja, qualquer joystick terá a opção de controlar o eixo.

Note que são diversas propriedades e cada uma tem suas especificidades. Temos a lista completa acima, como referência, mas não é necessário decorar isso tudo. Caso seja necessário, pode voltar à aula e dar uma olhada, ou mesmo utilizar o manual de referência do Unity. Para facilitar, o Unity também tem pequenas dicas ligadas a cada uma das propriedades no próprio editor - basta posicionar o mouse em cima e aguardar alguns instantes até que a dica apareça.

Veja que um eixo é, usualmente, um valor entre -1 e 1, que varia a medida que uma das teclas é pressionada para um lado ou para o outro. Ou seja, utilizamos eixos, usualmente, para fazer a movimentação de nossos personagens, seja ela horizontal, vertical ou como o jogo permitir. Podemos criar outros eixos para representar outros tipos de modificações, como fizemos no exemplo criando um eixo para vôo do personagem, mas não temos nenhuma obrigação de utilizar esses conceitos ou mesmo criar novos eixos. Encare isso como uma facilidade que o Unity nos traz!

Para mover nosso personagem para esquerda e direita, ter uma tecla que indica +1 e outra -1 é bem simples, correto?! Ah, mas e para pular?! E para atirar? E para lançar foguinho da mão depois que eu pegar uma florzinha no meu jogo novo que estou criando e tive a ideia inovadora de adicionar isso? Eu preciso de um eixo para isso? Na verdade, precisa sim! Apesar de não ser obrigatório. Vamos entender melhor.

Versão 5.3 - Todos os Direitos reservados