# Read USD (and Alembic)
INPUT → Read a USD file (.usd
/.usdc
/.usda
/.usdz
)
INPUT → Read an Alembic file (.abc
) [read through USD API]
INPUT → Read an Alembic file (.step
, .stp
) [read through USD API]
INPUT → Read an Alembic file (.obj
) [read through USD API]
INPUT → Read an Alembic file (.iges
, .igs
) [read through USD API]
INPUT → Read an Alembic file (.ifc
) [read through USD API]
INPUT → Read an Alembic file (.stl
) [read through USD API]
OUTPUT → A Multiverse Compound node (mvUsdCompoundShape
)
This shelf button allows to read USD files such as assets, compositions and overrides. Alembic assets can also be read. Data is streamed to the viewport for manipulation and playback and and to the supported render engines, in a procedural fashion.
The following geometry types are all supported:
- poly mesh shapes (including blend shapes and texture reference objects)
- subdivision surfaces
- curves (strokes / pfxHair / nurbs)
- points / particles
Additionally a large variety of primvar and attributes on geometry are available for display and/or rendering.
Finally, there are other non-geometric objects that can be read:
- cameras
- materials
- skeletons & skeleton animations
- lights
TIP
Reading assets, compositions and overrides is also available through the Multiverse Python API:
multiverse.CreateUsdCompound
See the relative API documentation
The result of a read operation is the creation of a Multiverse Compound node
(type mvUsdCompoundShape
) which encapsulates all data: this is a single shape
node which is visible in the Outliner, and is efficiently represented in memory.
The hierarchical representation for the content of this node is visible in MEOW, a high-performance window which is able to manage any asset complexity, and where you can perform overrides and assignments among other actions.
You can read mode about the Compound node in the Compound documentation.
TIP
Read the USD or Alembic documentation to understand more in depth their differences.
Through the reader's window you can:
Read USD Asset and Composition files with any extension (
.usd
,.usdc
,.usda
)Read Apple USDZ AR Assets in
.usdz
format.Read Alembic files in the
.abc
format (“Ogawa” backend only).Read STL, IGES, STEP, OBJ, STL files with their respective extension.
Read a single USD sequence "Clip" file (
.usd
,.usdc
,.usda
).Generate a single USD Clip which references a file-per-frame sequence of USD or Alembic files. The clip is generated in the same folder where your file-per-frame sequence is located, alongside with the clip topology file. Make sure to read our Usage Guide for Sequence Clips.
Notes on Clips:
— When generating a clip file, both a topology and a manifest file are also created for each clip: they are not meant to be read directly in the Compound, they are instead used by the clip file when the clip is read.
- You can optionally generate a
.usda
USD ASCII Clip file by explicitly specifying the.usda
extension in the file dialog. ASCII files should only be used for inspection and for debugging and understanding purposes.
- You can optionally generate a
# Input
The Multiverse Read USD (or Alembic) UI allows you to read into Maya any USD and Alembic files which were previously written by:
- Multiverse Write USD Asset
.usd
/.usdc
/.usda
/.usdz
files - Multiverse Write USD Composition
.usd
/.usda
/.usdz
files - Multiverse USD Clip Sequence
.usd
/.usda
files (generated from this UI itself)
In addition to the above:
- Multiverse Alembic
.abc
files created by previous versions of Multiverse (Ogawa backend only). - Maya Alembic
.abc
files created byabcExport
(Ogawa backend only). - Maya Alembic
.abc
files created byabcExport
(Ogawa backend only). - Houdini Solaris USD
.usd
/.usda
/.usdz
/.usdc
filesUSD_ROP
LOP orUsdExport
SOP node. - Houdini Alembic
.abc
files created byRoP Alembic Output
node (Ogawa backend only). - Any other application/plug-in/tool able for any DCC App able to write USD files or Alembic files (Ogawa backend only).
- Other formats such as STL, STEP, IGES, IFC, OBJ.
TIP
You can strategically choose the Viewport draw mode before actually drawing the data. This will allow you to potentially load data that cannot fit in memory or are simply too complex to draw in Maya.
Additionally you can choose a different draw mode for instances as well as set the percentage ratio of instances to display.
You can also choose to display different USD purposes: render, proxy and guide.
Reading USD files without "Default Primitive"
USD files generated by Houdini or other applications may not have a USD default primitives specified (in Houdini USD ROP you have an option to write the name of the default primitive). When no default primitive is specified, Multiverse will print a warning in the UI and use as a default primitive the first primitive encountered when reading the file. Multiverse always writes USD files with a specifies USD default primitive.
# Output
The result of a Multiverse Read operation is the creation of a Multiverse Compound node encapsulating the content of the file being read. Read the Multiverse Compound node reference to know more.
You can read in Maya as many compounds as you want, however keep in mind that the more Compound nodes exists in Maya the slower the viewport draw will be: Multiverse is designed for consolidating individual Compounds into hierarchies to be written into "Compositions" (see Writing Compositions. Once "composed" the viewport draw will be fast. An example of a composition is J Cube's Esper Room, or the Pixar's Kitchen. Ideally you should streamline your scene into as few compounds as possible when in the lighting and rendering stage of your pipeline: for example you would have a Compound for each main character and one to three compounds for your set (near, min, far bg).
# Reference
Section | Parameter | Description |
---|---|---|
Selected Asset Metadata | Backend | USD or Alembic (Ogawa). |
Frames per Second | Shows the FPS the asset was encoded with. | |
Samples per Frame | Shows the number of samples per frame the asset was encoded with. | |
Start Frame | Shows the start frame. | |
End Frame | Shows the end frame (if any). | |
Default Prim | Shows the USD default prim. If no default prim is specified in the asset, the reader will show a warning. USD assets without default prim are technically legal in USD and can be generated by pipeline tools. If a default prim is not specified, the first primitive will be used as a default prim. | |
Up Axis | Shows the Up Axis defined in the USD file. | |
Rotate Z-Up to Y-Up | If the Up Axis is Z-Up this controls is un-grayed and offers the ability to flip it to Y-Up when reading it. | |
Asset Path Options | User Relative Paths |
Default ON. In the resulting mvUsdCompoundShape node, each
path of each “layer” specified in its UI, will be saved in the Maya scene
description using paths relative to the currently set Maya project. Note
that when using a USD Asset resolver this option is intentionally
grayed out (as all paths will be encoded relatively to the resolver).
|
Viewport Draw | Shaded | Shows the data as smooth shaded |
Material | Shows the data as smooth shaded with USD preview materials (if any). | |
Flat | Shows the data as flat shaded. | |
Point Cloud | Shows the data as point cloud. | |
Bounding Box | Shows the data as single bounding box. | |
Bounding Boxes | Shows the data as multiple bounding boxed. | |
Skip | Skip the draw. | |
Proxy - DEPRECATED | Shows the data as proxy geometry (if any). | |
Instance Draw Mode | Inherit | Draw instances and point instances using the main draw mode. |
Point Cloud | Draw instances and point instances as point clouds. | |
Bounding Box | Draw instances and point instances as bounding box. | |
Instance Draw Ratio | 100 (%) | Jow many instances and point instances to draw in percentage. |
Display Purpose | Proxy | Display USD primitives set as "proxy". |
Render | Display USD primitives set as "render". | |
Guide | Display USD primitives set as "guide". | |
Z-up | Read the asset with Z-up orientation. | |
Scale to cm | Convert asset to Maya default units: cm | |
Read Options | Read Mode | Allows you to choose how to read the data into Maya. |
Compound | Reads data by streaming it into the compound and in the renderer. No heavy data exists in Maya or in Maya files. This is the default behavior. | |
Maya Geo | Import data as Maya data: all data exists in Maya as native Maya geometry and has no live connection with the compound. | |
Connected | Reads data by streaming it into the compound AND import it as Maya data with live connections with the compounds to allow easy round trip between the two. | |
Generate USD Clip | Start / End | Define the start and end of the clip. |
Clip File Name | Define the clip file name. | |
Generate USD Clip | Generate a new USD clip (which can be then then read). This operation also generates two additional files, a topology and a manifest file, which should not be read directly as they are read by the clip file itself. |