Tips request for learning Fluid/Liquid Simulation from scratch

Hi everyone. I’m going through my internship as VFX artist in a studio where there are no other VFX artists so I’ll be asking my questions here :slightly_smiling_face:

Starting today, at work we have a week in which we stop all projects we’re working on and we can learn whatever we want. I decided to go for fluid simulations, but truth be told, I have no clue where to start.
It would be great being able to make some dynamic fluid that I can use in Unreal Engine, possibly in Niagara.
What do you people think/know it’s the best path to go?
Do you know any good tutorials for shaders or any other kind of workflow?

  1. You need more than a week. If you don’t already have a good grasp of how it works, one week is not enough time. You might be able to hack it together if you get a ready made plugin though.

  2. GPU gems is a good start.
    However, you would also need to go beyond that and implement a liquid solver. Once you got fluids down, I’d start looking at the 3d spatial grid. Take a look at the example data for how a PBD sim works. Then you can start extending that to a PIC eventually.


Thank you!
Yes, I figured one week won’t be nearly enough, but it’s a good start because probably I’m going to need it someday :slight_smile:
I just saw, in the newest release of UE5 is adding something along those lines so I’ll be doing some research about it.

Thanks for the GPU gems, that will be an interesting read, and thanks for the advice


If you just want an asset to use, Fluid Ninja Live looks very capable.

1 Like

Thank you! I have been looking into Fluid Ninja before, but we use UE5 at the studio and last time I checked, while it was compatible, it still had some issues with the newer engine. But definitely an option to consider in the future, I already pitched it to the people in charge :slight_smile:

Epic has also recently released the Niagara Fluid Plugin (Should work in UE5 Preview 2):

1 Like

Yepp, I’ve been looking into it, looks pretty cool and easy-ish to use, still in beta and riddled with bugs but definitely worth starting to look into it :slightly_smiling_face: