New Fluid Simulation Algorithm Allows Realistic Water Physics

As games steadily approach new levels of photorealism, one of the few remaining "problem areas" has been providing a realistic simulation of water physics, which is still notoriously difficult to implement properly, and is compute / graphics intensive.

A new fluid simulation algorithm (FSA) from PhysX appears to have made a breakthrough with its Position Based Fluids (PBF) technique that is based on the same Position Based Dynamics (PBD) framework used for simulating cloth and deformables in the PhysX SDK.

According to PhysX Info, PBD uses an "iterative solver" that allows it to "maintain incompressibility more efficiently than traditional SPH fluid solvers. It also has an artificial pressure term which improves particle distribution and creates nice surface tension-like effects (note the filaments in the splashes). Finally, vorticity confinement is used to allow the user to inject energy back to the fluid."

Further information on the technology is available in the following SIGGRAPH 2013 paper by Miles Macklin and Matthias Mueller-Fischer. The demonstration video (running on a single GTX 580) is available below.

Create a new thread in the UK News comments forum about this subject
This thread is closed for comments
Comment from the forums
    Your comment
  • Robi_g
    Looks a tad too runny in the first one
    There seems to be no weight to the water. The parts where one side of the glass was completely broken, the force of the water would have pushed it away but it didn't. The glass fell and blocked the water again.
  • cozmium
    Deary me, everything always boils down to 'Nvidia this, AMD that' from whichever fanboy side happens to get rated highest - usually AMD.

    AMD might have done 'hair physics' but not only is that far easier to do, but much more pointless. I've worked in 3D animation for over a decade and i'll still opt to make hair 'manually' and control it with bones than use a plugin: the simple reason being it's just easier and it doesn't mess you around with dynamics that may not respond how you want. Add on computation time to that mix and it's little more than a fancy tech demo.

    Now i'm not gonna start worshipping Nvidia here either, this demo is really impressive by all means, but one has to ask about scale and particle limits. It's certainly a neat idea to use for something like fish tanks, drinks etc. - small things that a player can interact with, but something like a lake, ocean, river etc. would take a massive amount more to do it and I would say we're a long long way off larger scale in terms of processing power yet. These are the things that would have the greatest impact in the game environment though.

    I'm not trying to slate this awesome thing, i'm just saying don't suddenly expect to see it as an ocean. wysiwyg.