Here is a nice presentation by Simon Green (NVIDIA) about how to render SPH (smoothed particle hydrodynamics) particle-based fluids.
Another related post: Reconstructing Surfaces of Particle-Based Fluids Using Anisotropic Kernels.
Graphics Cards and GPUs News, Graphics Programming, Home of FurMark
Another related post: Reconstructing Surfaces of Particle-Based Fluids Using Anisotropic Kernels.
Comments are closed.
Pingback: assari (PukiWiki/TrackBack 0.3)
Thanks, nice to know somebody reads this stuff! The artifacts from the separated bilateral filter in the presentation actually look worse than they really are.
We are at Geeks3D 😀
Can’t wait to test the demo!
@simon.
I was using a very similar technique earlier this year (heres an image http://twitpic.com/151ash ) with added hypnoglow :-).
One difference in technique, I output the normal on the first pass rather than derive it later. I used a shader so no matter how close spheres were the image was perfect but in retrospect, an image of the sphere normals would be faster and given the blur pass, adequate.
oh also I used hierarchical blur which allowed for all surface artifacts to be smoothed out but at the expense of fuzzy edges which I tried to fix with a z-sensitive blur with partial success.
Auld – you picture looks nice!
The advantage of blurring the depths rather than just the normals is that you can calculate a smoothed surface position from the depth, which is needed for high-quality shading (local view vector for reflections etc.)
Yeah, you need some kind of depth-sensitive blur (bilateral) to avoid blurring nearby particles into particles behind them.
Simon, thanks.
To be clear I output z and normal so I have the surface position too (but not used in my image). I blur the normal which avoids calculating a new normal using the delta z you mention in your paper. BUT you use 16 bit z (?) and I’m blurring 3 bytes which is probably much slower. Swings and roundabouts in the end. Nice work on the water lighting model and putting it all together.
Ah I get you. Yes as I didn’t combine this I didn’t spot the surface distance blur is important too: very important in your case. You have a close approximation to the surface geometry I only have approximation to surface lighting.
Pingback: Particles in BGE: Fluid Surface and Collision in the works | enj