2025-01-09 – Testes de Balística com Granadas e um Pai Natal, no meu Game Engine em C++…
Este foi o Pai-Natal que me visitou no Natal, pois nunca tive tantos problemas no Natal, incluindo um carro avariado, por isso aqui está ele.
Isto são testes de balística já adaptados ao funcionamento de inimigos no meu Game Engine, a preparar para um dia criar os homens que atiram granadas que aparece no Batman the Movie da Ocean de 1989, o qual farei um remake em breve com o meu Game Engine, este que vêem aqui, que crio do zero em C++…
Mas falta fazer muito, e explico abaixo.
Vejamos:
Estive para o fazer no Natal, porque crio sempre algo adaptado às ocasiões festivas pelas quais passo, mas na altura com tanta falta de tempo e ainda por cima problemas como um carro avariado, não tive tempo para o fazer.
Além disso, para o meter a funcionar, tive de fazer mais alterações ao Game Engine do que imaginava, porque ele até agora funcionava com alguns elementos que entravam no arranque do jogo, pré-definidos, e alguns outros eram dinâmicos, em tempo real, como as balas, etc.
Mas não tinha ainda criado um sistema para lançar personagens reais como inimigos, no ecrã em tempo real, ou granadas, que ao contrário de balas, têm comportamentos muito específicos, pois como podem ver, movimentam-se em parábolas, rodam quando são atiradas, causam explosões, etc:
Vejamos em câmera lenta a granada:
No jogo original do Batman the Movie de 1989, abaixo na versão para Commodore Amiga, podem ver as granadas:
Ou aqui ampliado:
Parece estúpido, mas tem a ver com a forma como vou desenvolvendo o meu Game Engine, que é: “em cada dia faço o que me vem à cabeça”, sem qualquer planeamento.
Chegou a hora de o fazer, de poder criar inimigos de forma dinâmica em tempo real, e outros objectos como granadas.
Antes era só os que arrancavm com a máquina, e alguns em tempo real como balas, bolhas, etc.
Neste momento posso lançar já qualquer coisa em tempo real, mesmo que mais complexas.
Isto fez com que tivesse de alterar dezenas de ficheiros de código do meu Game Engine, para que tudo funcionasse, e como sabem, está em C++, a linguagem mais complexa, que à mínima coisa tudo pode crashar, aliado ao facto de ter Multi-Threading, etc, etc.
Por isso levei mais dias e não lancei o Pai-Natal no Natal.
Estive para o lançar no Dia de Reis, altura em que abríamos presentes antigamente e ainda se faz em Espanha.
Mas por muita falta de tempo, pois estou em mudanças para o Porto, etc, só hoje terminei esta parte.
Falta ainda muito.
As granadas neste momento detectam colisões a nível de píxel, quer contra o jogador quer contra paredes e chão, e têm um movimento de parábola algo apressado.
Falta fazer movimentos de parábola mais perfeitos, com base nos exemplos de teste que lancei antes, como podem ver abaixo:
Falta depois melhorar a Inteligência Artificial do Pai Natal neste caso, fazer com que dispare para outros lados, para cima, etc, e até fazer com que o Pai Natal (neste caso) consiga calcular qual o melhor ângulo e força com que atira uma granada de forma a que nos atinja, pois directamente poderia falhar mas com um arco maior ou com mais altura acertar.
Isso fica para depois.
O meu Game Engine sofreu muitas alterações, por umas 10 ou 15 vezes actualizei no meu Git privado mais de 50 ou 70 ficheiros de cada vez.
Isto porque em Dezembro fiz uma grande remodelação no meu Game Engine para o optimizar.
Em breve mostro isso também.
Hoje ficam-se com as minhas granadas e o meu Pai Natal dedicado ao Natal. 🙂
Hasta!
2025-01-09.
Partilhado no mesmo dia no LinkedIn em:
(A colocar mais tarde).
Próximo post associado ao meu Game Engine em C++:
(A ser colocado mais tarde).
Post anterior sobre o meu Game Engine, sobre o meu sistema de teste de colisões:
Post anterior do meu Game Engine sobre o mesmo assunto do jogo Batman the Movie 1989: