Programando Teclado, Mouse e Controle em Jogos. RAYCASTING Avançando.
Neste vídeo eu começo a inserir a parte de Input na nossa engine de Raycasting. Essa parte de comandos será dividida em vários vídeos pois existem muitos detalhes envolvidos.
A ideia é criar uma classe específica para tratar os comandos do teclado, mouse e joystick. Esta classe cria um objeto com os diversos eventos disponíveis, e com isso nosso código verifica os eventos a cada frame para desenhar o frame atual de acordo com o input do usuário.
Os eventos podem vir de qualquer hardware, como teclado, mouse e controle, e isso fica desacoplado do restante do código. Por exemplo, se o usuário estiver andando para a direita, para o restante do código não importa se é uma tecla do teclado ou o pad do controle, pois a engine vai enxergar apenas o evento de ir para a direita. Isso centraliza a comunicação com os vários tipos de hardware e abstrai isso do restante do código.
Inicialmente vou começar com o teclado, depois mouse e por fim o controle. Em um primeiro momento faremos tudo com velocidade fixa, mas depois adicionaremos a intensidade em alguns eventos. Por exemplo, se o usuário estiver usando um controle e mover bem devagar o pad, então temos que andar devagar na engine. Portanto existe uma intensidade a ser considerada em alguns eventos.
Estou fazendo de uma forma mais simples e intermediária para ficar fácil de entender, mas a ideia é no futuro avançarmos nesta parte de input criando objetos para cada comando. Desta forma conseguimos serializar os comandos e até enviá-los pela rede.
#raycasting #controle #desenvolvimentodejogos