Flex CHOP Material

I have been using the very excellent Flex CHOP (github.com/vinz9/FlexCHOP) and am wondering - is there any way to change or apply materials without having to edit the shader code? Basically I’m trying to make it look more like actual water, any suggestions would be appreciated.

I guess it’s possible to build fluid surface in a geometry shader, probably with some additional calculations in a compute shader. I would start with looking up how it’s done in some Unity3D asset or other samples, then try to port them to TouchDesigner.

Maybe @vinz9 already did some research about rendering particles as fluid?

Hello,

So a lot of people have been asking, maybe I should edit the readme :wink:
There’s no fluid surface actually constructed with polygons, it’s a screen space technique involving rendering the depth, blurring it and doing deferred shading.
One thing that is missing in the released version of flex Chop is outputting the anisotropy per particle, for ellipsoid renderings, instead of spheres.

See docs.nvidia.com/gameworks/conten … anual.html the paragraph on fluid rendering and the note at the end
[4] Reconstructing surfaces of particle-based fluids using anisotropic kernels

To get back to your question, even as is, just rendering the depth for spheres instead of ellipsoids and doing the shading on that will give bring you closer to a surface look.

Nice! Got an answer from the man @vinz99 himself!

So a couple of newbie questions, what do you mean about rendering the depth? Is this a setting in the geometry instance for the spheres? And by “shading on that” do you just mean post processing with a blur, or something beyond that?

Also, what is causing the scene to rotate in your example file? I can’t for the life of me find it, so I’m assuming it’s in the shader somewhere?

Hello all and particularly @vinz99,
I posted a technique question on Flex here: NVIdia Flex Feedback into Actor?
That reads essentially this: how can we regularly feed-in new random positions into a Flex actor using the Feedback input and conserve decent collision physics? My reason is that I have a pool of 15 million particles and I want to insert only a small part of them in Flex and get the ones I don’t need out in a loop so Flex is only doing simulation on a small number of relevant particles at any time.
If I do that straightforward I get my inputs well positioned but collisions suck and studder because the feedback loop only seems to accept small differences in the values to work smoothly.
Can that be done? Any push towards a direction would help, I can always figure out the assembly, All the best! P