For more details on authoring materials in USD with LOPs, such as adding material references and variants, see LOPS tutorial 1. We will outline basic material workflow with RenderMan materials.
- Materials are created within the Material Library LOP.
- Dive inside and create your material network.
- Go back up to the Material Library parameters and auto-fill materials. See the note below.
Auto-fill Materials button on the Material Library LOP populates the interface with all VOPs with the Material Flag set to True. There is a bug in 23.0 that defaults the Material Flag to True on all RenderMan VOPs, so auto-filling will create too many materials. Either select all non-bxdf nodes and switch the Material Flag off before auto-filling, or remove extra materials after auto-filling. The extra materials will not affect rendering, but will clutter the scene. This will be resolved in a near future release.
- Fill in the Primitives and Material Path parameters on the Assign Material LOP for each material assignment. You can either type the paths or drag and drop from the Scene Graph Tree. Here we are assigning the material we created above to a sphere.
- Solaris supports multi-render materials. To create, wire the different renderers' material networks to a collect node. The correct network is selected when a hydra render is started.
PxrMaterialBuilder is not yet supported in Solaris, which is the default RfH workflow you see elsewhere. To package a RenderMan material network, create a subnetwork VOP.
- The Subnetwork VOP contains a subinput and a suboutput. Wire bxdf and displacement connections to the suboutput. These outputs should then be connected to the material library's collect node. The subinput VOP can be used for indirect inputs from the material library network.