2024-12-15 – O meu novo Sistema de Teste de Colisões e um Mapa de Níveis melhorado, no meu Game Engine em C++…
Devido a ter andado a executar optimizações fortes no meu Game Engine, para poupar memória e CPU antes de avançar mais, com resultados que demonstrarei no meu próximo post, acabei por ter de corrigir 1001 coisas, pois com alterações num Game Engine com centenas de ficheiros de código, há sempre confusão quando alteramos algo.
Nessas alterações estavam problemas com o meu Mapa de Nível, e com as colisões, pelo que melhorei o Mapa de Nível ao corrigir os problemas, e ao resolver o problema das colisões decidi criar um sistema novo de Teste de Colisões no ecrã, mais bonito que o anterior:
Abaixo podemos ver o sistema de Teste de Colisões, que além de ser mais bonito e com cores diferentes, inclui ainda uma pausa no Game Engine para poder analisar melhor as colisões, neste caso com as gotas de chuva, pois foi um dos locais onde vi problemas após as optimizações extensivas que fiz:
Sobre o sistema de colisões, podem ver que adicionei algum “white noise”, como aquele que vemos na televisão, mas em três cores diferentes: Vermelho para os Inimigos, Azul para o Jogador, e Branco para as Plataformas onde ambos colidem, e penso que ficou muito giro. 🙂
Aproveito para referir que como é um sistema de testes, eu fiz de outra forma que interfere com a renderização do Game Engine, pelo que as gotas de chuva poderão desaparecer ocasionalmente, e tem a ver com o Multi-Threading em que estou a trabalhar também, mas que será resolvido entretanto.
Podem ver o mapa mais de perto aqui no vídeo abaixo, e podem notar que o sistema antigo não estava tão preciso porque foi feito à pressa (é aquele mais escuro e baço do exemplo), e que o novo é bem mais preciso no que diz respeito à posição dos objectos, mas confesso que o anterior ficou mais impreciso devido às novas anterações, mas dado que tenho já um novo, vou deixar o antigo de lado:
No antigo acima podem ver que os inimigos estavam dentro das paredes no mapa e desfasados, e no novo estão bem.
Mas relembro que estava bem antes das minhas optimizações, mas dado que criei um sistema novo, vou deixar esse antigo de lado pois não me traz ganhos grandes em performance ou memória.
Eu estou a optimizar hoje em dia o Game Engine extensivamente, abrangendo centenas de ficheiros, para poupar no uso da memória e de CPU, tornando assim o sistema mais rápido e mais leve.
Daqui a uns dias apresento resultados.
Tive de fazer isto porque antes de criar a minha nova adição tradicional de Natal, para festejar o Natal, eu teria de ganhar performance, pois o Game Engine já estava mais lento.
Isto acontece porque eu vou desenvolvendo rápido as ideias, mas não perco muito tempo para optimizar o Game Engine a fundo.
E com isto ele vai ficando pesado com o tempo.
Mas repito que daqui a dias terão novidades, vão ficar impressionados com as diferenças. ;P
E quanto à novidade de Natal, virá em breve. 🙂
Até à próxima.
2024-12-15.
Post anterior sobre o meu Game Engine:
(A ser colocado).
Post seguinte sobre o meu Game Engine:
(A colocar um dia).