Karma Material Builder plugged into Collect node

   822   2   0
User Avatar
Member
27 posts
Joined: 3月 2023
Offline
Hi everyone,

I'm busy with some render engine RND atm and utilizing the "Collect" node in order to setup multiple engines shaders at the same time.

However I noticed with Houdini 20 that when dropping down a "Karma Material Builder" it automatically has 3 outputs (surface, displacement and properties) but the Collect node only accepts one "shader" input for the material.

How does this new "Karma Material Builder" work in conjunction with the "Collect" node?
How do I have both surface and displacement plugged into the Collect?


Thank you!
amwilkins

Attachments:
Screenshot 2024-03-05 130812.png (109.5 KB)

User Avatar
スタッフ
1454 posts
Joined: 7月 2005
Offline
Usually, you can just connect the shader outputs to the Collect inputs.

This should produce a USD Material primitive with several terminal outputs uniquely identifying shader type (surface vs. displacement) and shader context (karma vs mtlx).

        token outputs:kma:displacement.connect = </materials/collect1/karmamaterial.outputs:displacement>
token outputs:kma:surface.connect = </materials/collect1/karmamaterial.outputs:surface>
token outputs:mtlx:displacement.connect = </materials/collect1/mtlxmaterial.outputs:displacement>
token outputs:mtlx:surface.connect = </materials/collect1/mtlxmaterial.outputs:surface>

Attachments:
MultiShaderMaterial.png (28.1 KB)

User Avatar
Member
27 posts
Joined: 3月 2023
Offline
Hi rafal,

Thanks very much for the info.
I finally managed to get around to a proper test and can confirm, this does appear to work.


All the best,
amwilkins
  • Quick Links