Long time no post !
Just wanted and release this "Alpha Preview" before moving-on to other things for a while
Would be released once I consolidated/cleaned stuff that's scattered across many "versions" later-on ,
and would maybe be "on demand" if it might be useful ( send me a PM ),
as I mostly did it for myself .. always trying to push the limits of what's possible lol .. )
but anyhoo, nice to be back! , and comments welcomed !
from the video comment:
_________________
Setup(s) / presets / compounds for very quick & efficient water FX
using a compiled C++ node ( authored by "Pedrito" ) interfacing with Nvidia Flex particle solver.
___________
Flex solver is itself very fast,
( so is XSI ! ... which specially on modern harware
can emit -hundreds of thousands- of advected /influenced particles per second, with a sustained 24fps until -Millions- are displayed ....
or almost lol, which is important in this case because ICE "talks to" or communicates what it's doing to Flex particles )
And flex otherwise isn't subject to certain limitations which previous GPU solvers came with in the past, limitations mostly about deformed and /or concave obstacles,
& it's also fast for a particle solver with any sort of inter-particle dynamics,
or it's fast, even for a GPU solver.
on an NVidia RTX 2070 :
- A sim with 100,000 particles : ~24fps
- 300,000 particles : 10fps
- and a Sim with 5 million particles : ~28 seconds per frame
Limited only by Vram on your GPU.
And 5 million was pretty-much the max for my own 8gb Vram
BUT.. other than 5 mil. not being exactly either "tiny",
max sim-ed particle count is not necessarily limiting, because even with lots of RAM, it remains ideal to split simulations if possible,
( also, nothing in this video requires more than 4 GB, except for the 5 million particle drop in a box )
Otherwise In this case, the host application has NO problem collecting handling/displaying/rendering caches that can amount to TENS of -millions- of particles.
( sigh XSI lol )
_______
Other factors on performance can include, deformed obstacles usage,
and obstacle mesh density is also a factor,
but not so much sim bounding box size ( if at all ),
as Flex particles are "Boundless".
So lots of empty space between farthest particles -won't- affect performance,
( if any of you can remember Exocortex SlipstreamVX ? )
But in general, because it's fast to make iterations,
it's therefore also fast to discover optimization methods to not need AS many particles
( per units of 3D space for the same level of detail .. as shown in the video )
______
Also in general, is this solver VERY well integrated,
( like bidirectional IO between Flex & host app )
so all "regular forces", or usual ways to advect particles still work ! ( or mostly work lol )
_____
Otherwise, you can double the shown FPS results if using an RTX 3090
PS: Note that the last "rendered looking" segment of this clip isn't actually "rendered",
and quality would go up another notch if there was actually raytracing going-on,
which there isn't ( or not yet
as all elements were essentially hardware captured.
( here applied the same "tricks" as when receiving flat or almost flat particle passes from FX Depts.
and reflections based on gamma-ed down incidence goes a long way for "water shading" )
I also applied a "post-densifyer" to the cached particles of the patch that's just below the camera,
but might have also applied it for another patch farther down.
( we can notice approximately where the lower density starts, but found it useful to see the limits of lower density particles in this first "un-raytraced visualisation" )
In any event, Happy Particles !
