USD objects in the Viewport
Maya's core viewport renderer VP2 supports fast load times of USD data. See the sections below to access visibility toggles and options based on the USD data you have selected in the Outliner or the Attribute Editor.
Viewport display for prims
Visibility: When set to Invisible, the selected prim and its descendants are hidden in the Viewport. When set to Inherited, the visibility of the selected prim is the same as the prim's parent. For more information, see Visibility in the Pixar USD Glossary.
Note: This is connected to the Visibility option in the USD contextual menu in the Outliner. When you select Make Invisible from the Outliner contextual menu, this option is set to Invisible.Purpose: Lets you classify prims (geometry) into visibility categories, so they can each be included or excluded from traversals of prims on a stage. Assign the purpose of a prim to specify its render fidelity in the viewport. When purpose is assigned to a prim, it overrides the purpose of its descendants. When purpose is set, the viewport display can be filtered by purpose categories under Object Display for the stage (proxyShape node).
Related Concepts: See Purpose and Stage Traversal in the Pixar USD Glossary.
- Guide: Assign to prims intended as markings, lines, arrows or interaction guides.
- Proxy: Assign to prims intended for lightweight proxy rendering.
- Render: Assign to prims intended for final high-quality rendering.
Viewport display for stages
Object Display
Purpose: Toggle purpose categories on and off to change their visibility in the viewport. Set the purpose of prims individually to use this category filter on the stage and witness the filter in the Viewport.
Viewport renderer
The USD core provides a rendering framework called Hydra, which supports multiple rendering backends. The Maya to Hydra plug-in can be turned on in the Plug-in Manager (Windows > Settings/Preferences > Plug-in Manager > mtoh.mll). When on, you can select between the render delegates in the Renderer panel menu. Choose between the following two Renderer options:
- Viewport 2.0
- (Mtoh Experimental) Hydra GL
Viewport display limitations
See the following Github discussion topic and for more information
- When USD lights are created, nodes are added to draw lights in the Viewport. By default, these light nodes are not ignored on render time and cause lighting issues at render time. These nodes can be filtered out by the translator using the following code:
// Skip UFE nodes coming from USD runtime // Those will be handled by USD Imaging delegate MStatus status; static const MString ufeRuntimeStr = "ufeRuntime"; MPlug ufeRuntimePlug = dagNode.findPlug(ufeRuntimeStr, false, &status); if ((status == MS::kSuccess) && ufeRuntimePlug.asString() == "USD") { return; }