[HtoA] Alembic 'Make Instance' user attributes don't work per instance

[HtoA] Alembic 'Make Instance' user attributes don't work per instance

opdigits
Explorer Explorer
484 Views
0 Replies
Message 1 of 1

[HtoA] Alembic 'Make Instance' user attributes don't work per instance

opdigits
Explorer
Explorer

Hello, I'm having an issue I didn't expect to have.

 

HtoA 6.0.2.0

Arnold 7.0.0.1

Houdini 19.0.383

 

I have cached a cube to alembic. If I use an 'instance' object node to instance the cube onto some points and give each point a unique integer value I can then use it to create a random colour in the shader which I have applied. They all share one shader.

opdigits_0-1669845604370.png

(fast point instance of single alembic)

 

However, if I do the same thing in SOPs with copy-to-points, I copy the alembic primitive and give the primitives the same integer attribute to be used in the shader and I give the 'ar_make_instance' attribute to instance them, the integer attribute no longer works per instance.

opdigits_1-1669845821890.png

(copy-to-points alembic with make_instance)

 

If I turn off 'make_instance' this works as expected, but I lose the efficiencies of instancing. Furthermore, if I inspect the .ass file, I see "myInteger" declared with the unique values.

 

 

opdigits_2-1669846096827.png

(copy-to-points alembic with make_instance - ass archive)

 

Firstly is there a way to instance alembics using copy-to-points while retaining the ability to apply per-instance attributes for shader variation?

 

I can still apply different shaders to the 'make_instance' primitives, but just not attributes?

opdigits_3-1669846383880.png

(copy-to-points alembic with make_instance - per primitive material)

 

Could this be a bug?

 

Many Thanks,

Adam

0 Likes
485 Views
0 Replies
Replies (0)