I’ve created flowing water as seen in Valve Software’s Left 4 Dead 2 and Portal 2, based on their whitepapers.
At this point the system supports vector fields (authored inside Unity , can be updated at runtime too), reflections, refractions and floating texture based debris.
The vector field forces include directional, point, vertex and meshbased force (nearby mesh faces contribute to the vector direction)
Coming soon(ish) floating solid (physics) objects affected by water flow, foam/scum, splashes/impacts.
What do you guys and gals think?
[UPDATED]
Added flowing colours! Blood that drips into the water will flow in the current, sewage pipes pump crap into the water, pump clean water into the system, etc.
I don’t have any hard numbers at the moment, but considering the complexity of the final effect, performance is pretty good. The biggest hogs at this point are reflection and refraction, but the flow is pretty fast.
Brikkworker.com: I’ll make a demo with a larger area sometime soon, but performance should still be pretty decent, that said, this is not for simulating a huge lake or an ocean, it’s meant for smaller bodies of water (think Portal 2 and L4D2 water areas).
Mauri: It is shader model 3 and up only, I’m afraid. I want to make simpler versions sometime too.