Is there a way I can sample 2D texture to emitted particles color/instance?

Hi everyone,
I’ve been trying to recreate this effect in Touchdesigner - sampling colors from every frame of a video into emitting particles. Example from Notch below (this example uses kinect)

Thanks in advance.

In the latest stable build you can now instance from 2D texture array directly.

I recommend my YouTube walkthrough and demo file: https://github.com/DBraun/TouchDesigner_Shared/blob/5c04b2f97f8fa422c2daa421c2306a5a5cc0df07/Starters/optical_flow_particles_compute/optical_flow_particles_compute.toe

You could use the alpha-filter parameter I mention in the video. You could also set the velocity threshold to zero and the post-multiply to zero. After that you could customize the instancing a bit to add the vortex effect in your uploaded video.

1 Like

Hi David,
This walkthrough and the demo file is amazing! Thank you a lot for putting this together.
I have tried it and it gets very close. One question I have is that is it possible to have the instances of each video frame go back in the Z axis to create the 3D effect sequentially?

Thank you again

For sure. There’s a moment before the Geo COMP instancing where the “lifeElapsed” channel is extracted out. You can do some TOP-work to have that channel affect the z-displacement, which is the third channel in the TOP that’s used for XYZ instancing. You’ll also want to turn on depth-testing on the Material and replace the Rectangle SOP with a circle SOP. Or try GitHub - vinz9/CudaSortTOP: TouchDesigner TOP wrapper for Cuda Thrust sort_by_key function to do the z-distancing sorting.

1 Like