This is an implementation of the Material Point Method (MPM), which is similar to traditional SPH but is faster and way more versatile. With this method, you can have many types of fluids at the same time and they all interact with each other.
The rendering is done by instantiating textured quads, capturing the result in a Render Texture, and applying a shader that transforms the particles in a water-like substance. The simulation can easily go to over 20 000 particles but right now the bottleneck is the rendering. I also made a version with dx11 rendering and was able to reach 20 000 particles with 60 fps.
Future plans:
Add viscoelasticity property to fluids.
Add support for multiple fluid types.
Improve dx9 rendering speed.
Multi-thread the simulation algorithm so that it can be used on mobile.
Make a dx11 compute shader version of the simulation.
Hi,
I like this project!!! The future plans sound great.
I’m a long time fan of the work from Grant Kot so it would be phantastic if there is a comparable solution in Unity.
Would be great to have a CPU Multithreaded version and a GPU accelerated version. And all the tweakable properties to generate different kind of fluids.
I would be very happy if you make such a solution available.
Thanks for the comment! Grant Kot’s work was my inspiration for this tool. He made some really amazing improvements to his fluid renderer over the years.
we need something like this in the future, and rigid bodies bouancy is a must there:smile: IF u cna make that work u got urself a buyer.
Most of the action will be under water, so it also has to support transparency and gradient, ill keep my eye on this one. There are a few fluid assets out there but i like the way this one behaved alot.