2021-05-11 – Um pouco de Fluid/Fire Dynamics, com o meu algoritmo gerador de fogo em tempo real, em C/C++…

Deixo aqui três tipos de animações criadas com o algoritmo gerador de fogo que desenvolvi em C/C++ para o meu Game Engine, criado do zero também em C/C++ (e que podem ver na opção “Projectos Meus” no menu deste website.

Agora, as três variantes são muito simples. Numa delas não tenho velocidade de vento, na outra tenho vento suave, e na outra um vento forte, e criei as três, para ver qual delas fica melhor nos meus jogos (os tais que criarei no Futuro com o meu Game Engine).

Agora, este é o algoritmo que em tempos partilhei dizendo que “descobri a fórmula que gera o fogo na nossa realidade”. Claro que isto não é correcto, pois não existe uma fórmula geradora de fogo na nossa realidade, o que existem, são várias leis de Física e 1001 dinâmicas, que todas interligadas, fazem com que o fogo se porta da maneira que se porta, seja na Terra, seja num espaço sem gravidade, o que quer que seja, são as leis da Física em si que determinam o seu comportamento.

Mas claro que num Game Engine, não vou simular toda a Física da nossa realidade e do Universo, para gerar simples fogos, senão os jogos passariam de uns 10000 FPS para 1 FPS, seria overkill para um simples jogo. Da mesma maneira, se quisermos criar uma explosão nuclear num jogo, vamos usar algo simplista, como “o cogumelo será x vezes maior em píxeis que a força usada”, apesar de este fogo ser mais complexo que isso, mas mais simples que a realidade em que vivemos. :).

Daí, sendo o jogo uma realidade mais simplista, tive de criar fórmulas mais simplistas de geração de fogo. Não serão as usadas pela nossa realidade, pelo “programador” que desenhou a nossa realidade, mas sim outras que simulam o fogo de maneira mais simples, e que o faz funcionar em realidades mais simples como serão os meus videojogos.

O importante é que simula o fogo bastante bem, e fica bastante bonito.

Vou deixar os três exemplos para verem, todos eles gravados no dia 15 de Abril, com o algoritmo de gravação de GIFs animados em tempo real no meu Game Engine, mas só agora partilhados por mim (tinham ficado esquecidos).

Primeiro, um fogo sem vento:

Agora, um fogo com um vento ligeiro:

E agora, um fogo com um vento mais forte:

E pronto, espero que tenham gostado.

Atenção que as animações foram criadas em tamanho pequeno para poupar tamanho no GIF animado, e aqui são ampliados para se verem melhor, daí ficarem pixelizados!

Hei-de criar mais coisas relacionadas com Física, ou Matemática, ou simplesmente features novas para o meu Game Engine, nas secções correspondentes, estejam atentos a este website. 🙂

Hasta!

2021-05-11.

Partilhei este post no LinkedIn em 14 de Maio de 2021, por me faltar lá uma animação deste fogo bem feita, que a anterior estava aos saltos. 🙂 (https://www.linkedin.com/feed/update/urn:li:activity:6798861579686359040/):

«Volto a deixar aqui um exemplo do meu algoritmo de geração de fogo.

É que da última vez que o fiz, o meu algoritmo de gravação de gifs animados não estava bem feito, e a animação ficou estragada. E queria também ter um fogo bem feito no meu perfil.

Assim, desta vez, partilho-o mas sem falhas na animação.

Partilho também sem vento desta vez.

Mas se quiserem ver as três versões que fiz, a sem vento, a com vento ligeiro, e a com vento forte, visitem:

http://www.goncalo.pt/por/2021/05/11/2021-05-11-um-pouco-de-fluid-fire-dynamics-com-o-meu-algoritmo-gerador-de-fogo-em-tempo-real-em-c-c/

Atenção que como o fogo está muito pequeno (para encaixar no meu Game Engine, que foi para isso que criei o algoritmo), ficou pixelizado ao ser aumentado.

Pergunto-me se fica melhor no jogo com vento ligeiro, sem vento, ou com vento forte.

O mal é que quando o criei, foi a pensar em vento, e sem vento fica um bocado estranho, talvez um dia melhore o algoritmo.

Mas é suposto ser um wildfire com chamas altas, penso que não está mal de todo.

Para a semana partilho novidades sobre o meu trading systems’ back-tester e talvez sobre o meu simulador de Physics da SpaceX.

Entretanto podem ver actualizações sobre todos os projectos no meu site http://www.goncalo.pt.

2021-05-14.»

Leave a Reply

Your email address will not be published. Required fields are marked *

RSS
Follow by Email
LinkedIn
LinkedIn
Share