Now this is the really fun stuff. Back in university these solvers were only used for cinema like pre renders and benchmarking the newest 2000$ GPUs. At least if they are in 3D. But even in 2D and with graphics toned down a bit to give your graphics hardware the opportunity to catch up with the task, they are quite mesmerizing.
Fluid Ninja for instance used this potential for a high-end production-ready Unreal Engine-Plugin.
This nice. I too can. I thought. And I am too lazy to learn the deeper meanings of the “Unreal” and some strange plugin which I will probably never get to work the way I need for my use cases. Therefore I made some little bastard of this in Flax:
And also tested with a quick dirty collision controller:
There is still a lot to do. First and foremost - optimization and scalability for mass emitting smoke (or explosion) effects like you do in a real game. There is nothing more boring than games that break immersion on the smallest bit of interaction.