Instance Noodles Transform


I’d like to translate an Instance Noodles Geometry.
But there is no Transform Pin in the SpriteBuffered node…

Here is the test patch:

Thank you,

Hey Yann,

Does *(3d Buffer) help?

that will transform your point buffer with a single or buffered transform

Yes it helps! Thank you.

But the Multiply (3d Buffer) nodes seems to change the geometry: there are fewer points…

I think it’s because you are having multiple subsets in your mesh. Because of this you have multiple 3D Buffers + spreadcounts. Without some modification the compute shaders are not really spreadable in this way (spread of spreads). Feeding the sprite shader works because it’s a ‘normal’ shader, and will just do a separate draw call for each spreadcount.

You can
-use a mesh without subsets (easiest way unless you need them)
-do some data wrangling to get all of your point data in to a single structured buffer. Maybe merge (dx11.geomfx) helps there

Hi everyone,

I need the subsets, so I tried the Merge (dx11.geomfx).
As in the Merge help file, I can connect the output on a Geometry Pin Input.
But the input of the SpriteBuffered node is different: no Geometry Input, but a Position 3D Buffer.
Is there a way to obtain the Position 3D Buffer based on the Geometry Output?

Thank you,

Yep, noodles pack has GetVertexData & SetVertexData, which convert between structured buffers and Geometry type.


Thank you very much! (And many thanks for Instance Noodles…)

Works perfectly.

For some DAE models exported from 3DS max, each subset has a different transformation.
I found a workaround: