# Read USD (and Alembic)
INPUT → Read a USD file (
INPUT → Read an Alembic file (
.abc) [read through USD API]
OUTPUT → A Multiverse Compound node (
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:
- skeletons & skeleton animations
Reading assets, compositions and overrides is also available through the Multiverse Python API:
See the relative API documentation
The result of a read operation is the creation of a Multiverse Compound node
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.
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 (
Read Apple USDZ AR Assets in
Read Alembic files in the
.abcformat (“Ogawa” backend only).
Read a single USD sequence "Clip" file (
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, a topology manifest file is also created for each clip: this topology file is not meant to be read directly in the Compound, it is used by the clip file when the clip is read.
- You can optionally generate a
.usdaUSD ASCII Clip file by explicitly specifying the
.usdaextension in the file dialog. ASCII files should only be used for inspection and for debugging and understanding purposes.
- You can optionally generate a
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
- Multiverse Write USD Composition
- Multiverse USD Clip Sequence
.usdafiles (generated from this UI itself)
In addition to the above:
- Multiverse Alembic
.abcfiles created by previous versions of Multiverse (Ogawa backend only).
- Maya Alembic
.abcfiles created by
abcExport(Ogawa backend only).
- Houdini Solaris USD
- Houdini Alembic
.abcfiles created by
RoP Alembic Outputnode (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).
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.
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.
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).
|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.|
|Asset Path Options||User Relative Paths||
Default ON. In the resulting |
|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).|
|Display Purpose||Proxy||Display USD primitives set as "proxy".|
|Render||Display USD primitives set as "render".|
|Guide||Display USD primitives set as "guide".|
|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 a second file, the topology or manifest file, which should not be read directly as it is read by the clip file itself.|