Channel packing USD Composer


I am trying to learn about asset management in Composer . But still have trouble with Channel packed textures… I can’t figure out the shader graph to map bluechannel-to-opacity

Do I need to pull a wire off the bitmap node’s color output and then split out the blue channel? If so, which node should I use to do that?

Any information around this will be helpful…or even a place online I can look for information like this.

Most of what I see in tutorials online… is dragging in texture maps to pre-build shaders…but that doesn’t work with packed textures.


you will likely need to build it from a OmniPBR material.

to populate the texture, here’s one of the ways i have been going about it so far (to clarify, i cannot say it’s 100% accurate)

  • use “Constant texture_2d” node for your texture input (albedo, ORM, normal, etc)
  • use “Constant float2” on params that requires a float value, such as map influence, etc
  • use “Constant bool” to toggle ORM

here’s a look at what it might look like

to add, not everything needs to be set to a node. i did it just so it’s easier to see what value got changed. below is the list of properties that were augmented by the nodes (with the only exception of “AO to Diffuse” the only param that i did not create a “Constant float2” node for)

in order for you to utilize channel stack with this specific PBR material, you will need to follow the ORM method:

  • R: occlusion/AO
  • G: roughness
  • B: metallic

AFAIK, i don’t believe any other stack order would work with this particular setup. and once the ORM is mapped, your roughness and metallic amount will be driven purely by the map (ideally keeping the influence to 1.0 to match the texture input). the format of the texture was png, but you can also use exr.

thanks for this, I will stick to using the stock shaders for now.
From what I’ve been reading those are more easily mapped to other software anyway, ensuring a proper look.

Thank you for the explanation.