# The Set Node

Maya Node Type → DG Node
Maya Noee NamemvSet

When LMB clicking the “Multiverse Set” shelf icon, a small UI pops up so that you can choose the target functionalities for the mvSet that will be created.

The Multiverse Set node can be used for a variety of tasks:

  • Namespace selection
  • Attribute overrides
  • Specify USD purpose

# Namespace Selection

The rendering-agnostic namespace attribute allows to set a namespace used for material assignment. This is typically the namespace of the material shading networks that are Maya-referenced in your scene.

This is resolved procedurally at render time.

Read MEOW Attribute Overrides to know more.

# Attribute Overrides

You can set renderer-specific attributes for the Arnold, 3Delight, Redshift and VRay rendering engines by putting inside of a mvSet node any of the following set-like nodes:

  • objectSet node — for Arnold and VRay rendering attributes
  • dlSet node — for 3Delight rendering attributes
  • VRayObjectProperties node — for some (not all) VRay rendering attributes ( we recommend to use the objectSet nodes since Multiverse adds all VRay attributes on it).
  • redshiftMeshAttributes node - for Redshift mesh attributes. Likewise all other redshift* set-like nodes are supported.

You can set Renderman-specific attributes by using the mvSet node since Multiverse adds all Renderman attributes to it under its "Extra Attribute" section.

Overrides are resolved procedurally at render time.

Heads up!

The reason why you can put the renderer-specific set-link nodes inside an mvSet is to allow for a render-agnostic workflow: the mvSet allows you to specify a "namespace" for the materials of the renderer you intend to use, while the renderer specific set-type nodes allow you to specify rendering attributes for each renderer.

Effectively, you can swap between renderers by simply changing the namespace for your material shading networks.

Read Rendering Attributes to know more.


Do not put mvCompoundShape nodes inside mvSet nodes. If your purpose is to set attributes on all the hierarchy encapsulated in a Compound, simply assign an mvSet node in MEOW on the root location (and remember that MEOW overrides work with inheritance from parent to children, so you can further override children by assigning a new override to a child location).

Bottom line: mvSet nodes should only contain set, dlSet, VRayObjectProperties and redshift* set-like nodes. Use the mvSet to set Renderman attributes, they are under its "Extra Attribute" section.

# Specify USD Purpose

USD provides three purpose "tags", namely "render", "proxy" and "guide", which can be used for displaying in the Hydra a different geometry. Typically "proxy" is used for lower resolution primitives with the objective of keeping the hydra delegate fast at interactive drawing, while "guide" is used for guiding primitives which are useful for artist purposed. Both proxies and guides are never used for rendering: by default every primitive that has no proxy or guide is a render primitive. If you specify a proxy, you need also to specify specifying it's render counterpart. If you specify a guide no render counterpart is needed.

With the mvSet node you can declare which Maya geometry should be used as a viewport proxy or render or guide. This information will be then written as to a USD file using the Multiverse Write Asset.

Read USD Proxies for Viewport to know more.

# Reference

Type Parameter Description
default enable material namespace whether to use a namespace for the items hierarchically overridden by this mvSet
namespace the name (string) of the namespace (typically coming from a Maya-referenced scene containing material shading networks)
proxy usd purpose: proxy Used by the Asset Write to define a Proxy geometry that is contained in the mvSet
render usd purpose: render Used by the Asset Write to define a Render geometry that is contained in the mvSet
guide usd purpose: guide Used by the Asset Write to define a Guide geometry that is contained in the mvSet
Last Updated: 6/3/2021, 11:23:49 AM