Importing and Exporting File Formats
Artists rarely work in a single application, so it is important to support multiple input and output formats. Modo supports a wide range of formats for transferring data. For more information about these formats, see Supported Formats.
Note: Modo's default unit is 1 m, whereas some applications, such as Maya, Houdini, or Nuke use 1 cm as default. This can cause problems with size when exporting/importing files from Modo to other applications. For example, a 1 m unit cube exported from Modo displays as a 1 cm unit cube in another application, whereas importing a 1 m unit cube into Modo from another application results in a 100 m cube. You can use the Scale option in the Preferences > File I/O > Alembic I/O to resolve this. See Alembic I/O.
You can read the various formats by opening them directly by clicking File > Open and selecting the proper file or by importing it by clicking File > Import.... The difference is that opening files makes them their own scene, while importing merges the saved file into the current scene. The following Open and Import formats are available:
Format |
Extension |
Notes |
|
*.lwo |
|
LightWave Object (LWOB) |
*.lwo |
|
|
*.abc |
|
COLLADA 1.4.1 |
*.dae |
|
Autodesk DXF |
*.dxf |
|
|
*.eps *.ai |
|
Protein Database |
*.pdb |
|
Scalable Vector Graphics |
*.svg |
|
McNeel Rhino 3DM |
*.3dm |
See Work with CAD Assets Inside Modo for more information. |
*.usd *.usda *.usdc *.usdz Model courtesy of Aaron Sims Creative |
During import, if the up-axis of the incoming scene does not match the up-axis of Modo, the incoming scene is transformed to match Modo's up-axis. If a conversion occurs, a message is logged in System > Advanced > Event Log. During import, distance units inside the USD file are converted based on the metersPerUnit value of the USD file. You can disable this behaviour inside Preferences > USD I/O. For more information about Pixar USD file preferences, see File I/O Preferences. Actor, Blob, Camera, Curve, Light, Mask, Material, Texture, Texture Locator, Locator and Mesh items are exported to USD as custom data on their respective primitive types. The data is preserved within Modo on import. Tip: Modo's USD import functions also support UV tiling Real World Size information in the Texture Locator tool's properties viewport. See Texture Locator for more information.
|
|
Autodesk FBX |
*.fbx |
|
Sterolithography STL |
*.stl |
|
VideoScape GEO |
*.geo |
|
SolidWorks Model |
*.sldprt *.stdasm |
|
Wavefront OBJ |
*.obj |
|
X-Rite AxF |
*.axf |
You can save a scene to a specific format with the File > Save As or the Export As command. The difference between them is that saving a file in a specific format replaces whatever is in memory, and subsequent saves continue to overwrite the saved file in the same format, while exporting keeps the same scene in memory, only writing the selected format to disk. The following Save As and Export formats are available:
Save As |
Export |
LightWave Object (*.lwo) |
LightWave Object (*.lwo) |
Alembic Format (*.abc) |
Web3D Standard X3D (*.x3d) |
Alembic Format (HDF) (*.abc) |
Alembic Format (*.abc) |
COLLADA 1.4.1 (*.dae) |
Alembic Format (HDF) (*.abc) |
Autodesk DXF (*.dxf) |
COLLADA 1.4.1 (*.dae) |
McNeel Rhino 3DM (*.3dm) |
Autodesk DXF (*.dxf) |
|
|
|
|
|
|
|
|
Tip: Modo's USD import functions also support UV tiling Real World Size information in the Texture Locator tool's properties viewport. See Texture Locator for more information. |
|
Autodesk FBX 2015 (*.fbx) |
HPGL Plotter File (*.plt) |
Autodesk FBX 2013 (*.fbx) |
Layered PSD (*.psd) |
VideoScape GEO (*.GEO) |
SVG: Scalable Vector Graphics (*.svg) |
glTF V2 (GL Transmission Format) (*.glb) |
glTF V2 (GL Transmission Format) (*.glb) glTF V2 (GL Transmission Format) (*.gltf) and (*.bin) |
Wavefront OBJ (*.obj)
|
McNeel Rhino 3DM (*.3dm) |
Autodesk FBX 2015 (*.fbx) |
|
Autodesk FBX 2013 (*.fbx) |
|
Stereolithography STL (*.STL) |
|
VideoScape GEO (*.GEO) |
|
Wavefront OBJ (*.obj) |
Additionally, you can right-click on any layer in the Item List and choose the Export Selected Layers option from the contextual menu for control over saving individual parts of a scene.
Option |
Description |
Format |
Specifies the format for the exported layers. |
Export all Layers |
Exports all layers in the scene. |
Separate Files |
Exports each selected layer to a separate file. |
Just Layers |
Exports only the mesh layers. No default items, such as cameras and lights, are exported. |
Exporting Pixar USD Files
Modo supports the import and export of Pixar's Universal Scene Description (.usd) files. The following Modo item types are supported:
- cameras,
- group locators,
- instances,
- meshes,
- replicators,
- all Modo light types except Portal and Mesh lights,
- the Principled material type,
- Blob volumes.
Tip: Modo's USD export functions also support Real World Size information in Texture Locator tool properties viewport. See Texture Locator for more information.
The USD exporter also supports joint-based animations. Due to USD requirements, you may have to make the following changes to your models to ensure the animations work as expected in other USD supported applications:
- In order to create a USD supported skeleton, you need an actor which contains the joint hierarchy. See Creating an Actor.
- In order to create a USD supported animation, you need an action, which contains keyframes of the entire timeline for the actor. See Creating Actions.
- Joints that affect a mesh must use a General Influence. See General Influence.
- General Influences must be ordered by hierarchy in the Normalizing folder, and match the order in the actor group. See Normalization.
Note: Modo ships with the 20.02 release of the USD plug-in, therefore USD Python bindings are not exposed and cannot be accessed by users.
To export a .usd file out of Modo:
- Select File > Export As.
- Enter a name into the File name field.
- Select Pixar USD .usd from the Save as type dropdown.
This opens the Export As dialog.
The exporter offers three other formats:
- .usda - a plain text ASCII file format,
- .usdc - a binary encoded file format,
- .usdz - a binary encoded zip-compressed file containing .usd files, image files, and audio files, making it easier to transfer your assets between machines.
See the Universal Scene Description documentation for more information on each of the supported file formats.
Note: Hidden items in the Items list are exported with the .usd file. If you don't want items to appear in the .usd file, you must remove them from the Items list in the Model layout, or Scenes list in the Modo layout.
Importing and Exporting Alembic Files
Modo provides a method of importing and exporting particle systems and geometry. The following additional attributes are imported and exported behind the Modo scene:
• age - A float value for each particle containing the particle age information.
• mass - A float value for each particle containing the particle mass information.
• force - A 3D float vector for each particle containing particle force information.
• modoParticleId - A float value for each particle containing native Modo particle ID in a range from zero to one.
• xform - A 3 x 3 matrix for each particle containing rotation and scale information.
• dissolve - A float value for each particle containing the dissolve coefficient information.
• pathLength - a float value for each particle containing the path length information.
• rate - float value, per-particle, containing particle rate
• angVel - A 3D float vector for each particle containing the particle's angular velocity information.
• torque -A 3D float vector for each particle containing the particle's torque information.
• posPrev - A 3D float vector for each particle containing the particle's previous frame position information.
• luminosity - a float value for each particle containing the particle luminosity information.
• rgb - A 3D float vector for each particle containing the particle's color value information.
Importing Alembic Files
Importing Alembic geometry into Modo is done by clicking File > Open and selecting the appropriate *.abc file. Once selected, the Alembic Load Options dialog displays.
The following import options are available for Alembic files:
Option |
Description |
Import as Static Meshes |
Converts the loaded scene items to the more efficient, though non-editable Static Mesh Item type. This does not apply to items with deformations. |
Make Instances from Matching Mesh Items |
Creates instances in cases where identical meshes are encountered during loading. |
Combine Transform and Mesh Names |
With this option enabled, the resulting mesh node becomes a combination of the names of the two items, the transform and the mesh. With it disabled, it only uses the name of the mesh alone. |
Import All Frames |
When loading an animated scene, enabling this option loads the transformations and deformations for the entire sequence. If disabled, Modo only loads the scene for the frame specified in Import Specific Frames. |
Store Animated Morphs with Meshes |
When enabled, Modo loads all the mesh deformations into the scene file directly. If disabled, the deformations are referenced from the original Alembic file and are loaded as necessary. |
Import Specific Frames |
Loads the scene with the transformations and deformations for the defined frames only. |
Subdivision Level |
When loading subdivision meshes, this value defines their current subdivisions level amount. |
Scale |
Sets the factor used to scale vertices, velocities, and object position. For non-streaming items, scale is applied only during import. For streaming meshes, scale can be modified in the Properties panel for the Alembic File Item. |
Polymesh streaming options |
Imports geometry items and deformers into the current scene, allowing you to layout and render very large animated Alembic files exported from Modo and other DCC software packages. In addition to particles, simulated meshes, and curves, multiple UV sets, materials, and parts are also imported into Modo. Note: The Alembic geometry, *.abc file listed in the Item List, is read only. The following options are available: • Modo Meshes with Alembic streaming deformers (subds and polys) - Imports animated geometry, subdivision meshes, and polygonal meshes. Once imported, a procedural Mesh Item displays in the Items List and you can change the transform, time, and scale properties in the Alembic Streaming Deformer tab. For more information, see Alembic Import Properties. • Alembic Streaming Meshes (polys only) - Imports non-topology changing polygonal meshes into Modo as a procedural Mesh Item. Once imported, two procedural Mesh Items display in the Items List. For more information, see Alembic Import Properties. • Alembic Streaming Meshes (polys only, force all) - Imports only polygonal meshes, and all of the Alembic data. It also forces non-animated Alembic meshes to load into Modo. The *.abc file is imported, an Alembic mesh, and a procedural mesh are created and listed in the Items List. You can apply procedural operations to each of these mesh items. When you select the *.abc file in the Item List, the Alembic File tab displays in the Properties panel. When you select the *_lowShape item in the Item List, the Alembic Mesh tab displays in the Properties panel for you to make the appropriate changes. For more information, see Alembic Import Properties. |
Alembic Import Properties
Once your Alembic file is imported, you can set the transform, time, and scale properties for the meshes, particles, and lines used in your scene. The following options are available:
Option |
Description |
Transform |
|
Position |
Use the X, Y, and Z input fields to apply specific offset distance values (calculated from the position the object was in when the tool was activated). When adjusting an object interactively in the viewport, the Position input fields display the current offset distance applied, providing useful user feedback. |
Rotation |
Use the X, Y, and Z input fields to apply specific rotation values. When adjusting an object interactively in the viewport, the Rotation input fields display the current offset distance applied, providing useful user feedback. |
Scale |
Use the X, Y, and Z input fields to apply specific scaling values. When adjusting an object interactively in the viewport, the Scale input fields display the current scale factor applied, providing useful user feedback. |
File Properties |
|
Geometry scale |
Sets the factor used to scale vertices, velocities, and object position. |
Time Properties |
|
Override Time Controls |
When enabled, the "per file" time controls, set on the Alembic file item, are overwritten. Note: This option is not available for selected *.abc file in the Item List. |
Offset |
Sets the offset value used in the timeline on which the Alembic animation starts from. |
Speed multiplier |
Sets the speed of the playback for the Alembic animation. The Default is set to 1.0. |
Mode |
Sets the playback mode to change the type of animation playback. The following options are available: • Single-frame - Plays only the single frame. • Play-once - Plays only once. • Loop - Repeats the playback. • Ping-pong - Playbacks normally and then reverse the playback. |
Exporting Alembic Files
Modo provides an Alembic exporting workflow for better interop between Modo and other DCC applications, such as Katana and Houdini.
You can select whether to export Alembic replicas as Geometry, Particles, or both Particles and Geometry. Exporting replicas as a particle system is a space effective method and is usually used for moving replicas into other DCC applications. Particles and geometry can then be connected to native replicators and easily modified. Exporting replica geometry is usually done for rendering purposes.
Note: The Alembic file format automatically deduplicates all geometry items that are the same.
How it works:
Exporting Alembic files is done by clicking the File > Export As menu and selecting the appropriate *.abc file format. Once done, navigate to the appropriate directory and click Save.
Modo provides a number of different export options for Alembic files. For example, setting the preferences for the Export Replicas As option is done in the System > Preferences menu by expanding File I/O > Alembic I/O. Once done, set Export Replicas As to either Geometry, Particles, or Particles and Geometry. For more information, see Alembic I/O.
Modo's particle systems are created from replicators by adding an Alembic scalar string property called ModoReplicator. This property is enabled by default. Apart from standard Alembic point cloud attributes (positions, velocities, widths, and IDs), Modo exports the following additional data behind the scene:
• xform - A 3 x 3 matrix for each particle containing rotation and scale information.
• dissolve - The float value for each particle containing the dissolve co-efficient information.
• itemIndices - The integer value for each particle containing the index replica item names and item Alembic object path arrays.
• itemNames - Non-animated string arrays containing replica item names.
• itemAbcPaths - Non-animated string arrays containing the replica item Alembic object paths. Replicas using the same names are identified.
• modoParticleId - The float value for each particle containing a Modo specific floating point particle ID.
Supported Formats
Format |
Description |
Alembic is a data format that saves geometry and animation data. Established by Sony Imageworks and ILM, Alembic is an open computer graphics interchange framework. Alembic distills complex, animated scenes into a non-procedural, application-independent set of baked geometric results. The format currently supports the import and export of both static and animated meshes, including subdivision surfaces and camera data. While the format does not directly support material information, part and material tags are exchanged with the mesh data. When importing an .abc file, the files remain external to the scene, streaming in on an as-needed basis. When importing files, Modo displays a dialog. For more information about Alembic file preferences, see File I/O Preferences. For information about importing Alembic geometry, see Importing and Exporting Alembic Files. |
|
Autodesk® fbx (.fbx) |
Originally a file format developed by Kaydara for their FiLMBOX® application, now owned by Autodesk. It has been adopted as a universal exchange format between digital content creation applications, because of its robust support of object, and animation data. Modo reads and writes the libraries supplied by Autodesk, that support interchange of geometry, lights, cameras, basic material and surfacing, UVs and transform animations. For more information about .fbx file preferences, see File I/O Preferences. |
Autodesk® dxf (.dxf) |
A simplistic geometry format developed for the interchange of data between CAD applications. DXF format does not support surfacing, materials, Vertex Maps or animation. Modo both reads and writes this format. |
COLLADA™ is an open source 3D interchange format managed by the Khronos™ Group. The Modo COLLADA exporter can read and write geometry with normals and multiple UV texture coordinate sets, materials, lights, cameras, effects, and transform animations, all using a common technique that is compatible with a wide variety of third-party tools. There are a number of File I/O Preferences that support this format. For more information about COLLADA file preferences, see File I/O Preferences. |
|
Encapsulated PostScript (.eps) |
A 2D vector format developed by Adobe® for exchange of vector drawing information created in their Illustrator® application. Though generally used for print applications, .eps files are imported into Modo as curves and you can freeze them into faces for further manipulation, render the curves directly, or use them as a basis for patch modeling. Modo does not export into .eps, except for the Export UVs to EPS command in the menu bar: Texture > Export UVs to EPS. |
glTF (.*glb,*.gltf and *.bin) | The glTF (GL Transmission Format) shading model is a file format for 3D scenes and models using the JSON standard. The glTF format exports locator nodes with transformations and hierarchy, meshes with normals, tangents, UVs, and color maps and a placeholder PBR metallic material attached to all meshes.
Multiple color and UVs maps can be exported with the meshes. For more information see, glTF Shader and GLTF V2 I/O |
HPGL Plotter File (.plt) |
A 2D vector-based plotter format originally devised for use with AutoCAD®. Modo only exports to this format. For more information about HPGL file preferences, see File I/O Preferences. |
LightWave Object (.lwo) |
Modo reads and writes .lwo2 format for geometry, supporting a full array of features including UV, weight, morph, and color Vertex Maps. Equivalent surfacing data is translated as well, when applicable. Unsupported information is encapsulated and retained, as long as you remain in the .lwo format. Saving to any other format discards the extra data. The loading and saving of LightWave's scene files is not currently supported. For more information about LightWave file preferences, see File I/O Preferences. |
McNeel Rhino® (.3dm) |
Rhino is a NURBS-based 3D modeling application. It has the ability to internally convert its curve based NURBS models into a triangulated polygon model. Modo reads the triangulated polygon data from any Rhino 3DM format file (Modo cannot read NURBS data directly). Modo can both Read and Write to the .3dm file format. |
Pixar USD (.usd, .usda, .usdc, .usdz) |
Universal Scene Description (USD) is a system for authoring, composing, and reading hierarchically organized scene descriptions. This format enables users to share USD files freely between applications that support it. See Introduction to USD for more information. Note: Currently, Modo can only import Pixar USD file formats. For more information about Pixar USD file preferences, see File I/O Preferences. |
Protein Database (.pdb) |
These files represent the three-dimensional structural data of large biological molecules, such as proteins and nucleic acids. PDB files are common interchange format for displaying these structures and can be readily found on the Internet for most any molecule type. |
Scalable Vector Graphic (.svg) |
SVG is an open standard XML based vector image format, that supports both curve data and image map data. Modo reads the vector data stored in the format and import files as bezier curves into a scene. SVG files are generated in a vector drawing package such as Adobe Illustrator. Once imported, the Mesh Item layer is stored in a folder named after the SVG file. Imported curves can be converted to Curve Polygons or converted to regular polygons using the 'Freeze' command. Additional enabling the render curves option will also make the resulting curves visible to the render engine. |
Stereolithography (.stl) |
The Stereolithography format is the language of 3D printers and CNC milling machines, commonly used with rapid prototyping and computer-aided manufacturing. STL format only describes the surface of the geometry, ignoring any shading or surfacing values. The STL I/O preference options allow you to define how unit values are interpreted and what format the resulting file is written in binary format (Save as ASCII option disabled), or in the ASCII text format (Save as ASCII option enabled). |
VideoScape (.GEO) |
Aegis VideoScape 3D was an early 3D rendering and modeling program on the Amiga (precursor to LightWave). You can both read and write geometry in this legacy format, though it is most useful for reading, as very few modern programs support the format. |
Wavefront Object (.obj) |
The .obj format is a file format developed by Wavefront Technologies for its Advanced Visualizer software package. The file format, being open, has been adopted by many other 3D applications because of its simplicity to implement, and for the most part has become a universal exchange format. .obj supports geometry, layers and simple surfacing. Vertex normal maps are also supported. The OBJ format provides only a single UV map per object, and all vertices must be mapped (no partial UVs are allowed and they are ignored on export). Modo loads and saves .obj format. For information about Wavefront file preferences, see File I/O Preferences. |
Web3D Standard (.x3d) |
An XML-based 3D standard and is the successor to VRML on the Internet. It supports geometry and basic surfacing. Modo is only able to write out to this format. |
Work with CAD Assets Inside Modo
Modo can import and export .3dm geometry, allowing you to work flexibly on your CAD assets. Modo is compatible with all versions of Rhino up to Rhino 7.
Importing Geometry from Rhino
Certain geometry types in Rhino have direct mappings to geometry in Modo. For example:
-
Meshes
-
Subdivision Surfaces
-
Curves
-
Points
Other geometry types such as NURBS and Extrusions do not have an equivalent in Modo, and are converted to Modo-usable geometry such as curves on import.
Note: When working with Rhino geometry that does not have a native type in Modo, we recommend importing Render Geometry created in Rhino. The topology of render meshes can be adjusted in Rhino to better optimize them for Modo. More information is available here.
To import geometry from Rhino into Modo, you can drag and drop a .3dm file into the viewport or navigate to File > Import and select the file from the explorer.
Once the .3dm file is detected, the Rhino Load Options window opens.
The options present on import are as follows:
-
Subdivision Level - Allows you to specify the subdivision level of Catmull-Clark polygons created during import.
-
Curve Division - For NURBS curves converted into Polylines. Each curve segment is divided by this division number.
-
Global Scale - Scales the model on import.
-
Import Lights - When enabled, import any lights present in the Rhino scene. When disabled, ignore any lights in the Rhino scene.
Working with Subdivided Surfaces
When imported into Modo, Rhino surfaces are treated as Catmull-Clark subdivision surfaces. Any edge weighting or creases present in the model are treated as weighted subdivision edges with a value of 100%.
When exporting meshes out of Modo back to Rhino, your asset is converted into a Rhino SubD model. Any edge weight values in Modo are also treated as a Crease Edge in Rhino SubD.
|
|
Asset in Rhino |
Rhino Asset Imported into Modo, with vertex |
N-gons, or polygons with five or more vertices on one face, present on imported models remain as is, while n-gons present on a model exported from Modo are treated as an n-gon and are not decimated.
Working with Curves
Modo also supports importing and exporting curves to and from Rhino.
NURBS curves in Rhino assets imported into Modo are converted to a B-Spline curve. Weighted NURBS curves are not currently supported. Rhino Polyline Curves are treated as Polyline when imported into Modo.
When exporting assets from Modo for Rhino, B-Spline, Bezier, and regular Curves are converted into NURBS curves. Polylines in Modo are converted into Polyline curves in Rhino.
|
|
Top Six Curves: NURBS Curves in Rhino Bottom Two Curves: Polyline Curves in Rhino |
Top: NURBS curves converted to Bezier curves Bottom: Polyline Curves converted to Polylines |