Information for MODO developers


MODO plug-in Software Developer Kit

Every license of MODO includes the MODO Plug-In Software Developers Kit (SDK). The MODO 901 Plug-in Software Developer Kit provides an application programming interface (API) and numerous source code samples that enable developers to read and write MODO 901 scene, image and movie files; introduce new commands and items into MODO; and access plug-in scripting support (with an example Lua interpreter).

The MODO SDK is based on COM, with C++ and Python wrappers for many of the published APIs, and is available for Mac OS X, Windows and Linux versions of MODO 901.

What you can do with the MODO SDK

  • Export data from MODO into the rest of your pipeline or tool suite (e.g. game engine). Control how MODO data looks to your application, for seamless downstream use in your asset pipeline.
  • Dump the contents of an LXO file into human-readable form.
  • Import data from another application into MODO. Read a proprietary in-house format or tackle an industry standard format.
  • Copy the contents of one LXO to another, applying custom operations as needed.
  • Introduce new procedural textures into MODO like pudding or boiling mud.
  • Add new Commands to MODO that execute native C++-based actions.
  • Introduce new types of geometry into MODO like nuts and bolts and screws.
  • Create new tools for MODO users that provide new ways to create and edit geometry.
  • Add new Replicator point generators to MODO. For example, you could create a condensation plug-in that places Replicators as you’d see on a sweating drinking glass.
  • Design innovative new ways for users to pick colors in MODO.

MODO TD SDK

The MODO TD SDK offers a simpler and more intuitive interface to the existing Python API, making it easier for technical directors to write plug-ins. It is a wrapper or package around the base Python API that simplifies the COM semantics of MODO's plug-in architecture and presents a more 'Pythonic' interface.


Scripting language support inside MODO

MODO can be scripted in Python, Lua or Perl. You do not need a special version of MODO for this. To invoke a script stored on disk, select SHIFT-F5 inside of MODO.

You can evaluate the processing of scripts you have loaded via the Event Log in MODO (accessed via Systems > Advanced > Event log from the main menu bar).


Editing the MODO User Interface using “Forms”

The MODO user interface is composed of “forms”. If you hit F3 inside of MODO, you can see or modify existing a wide variety of forms. These forms can be resized or torn off inside MODO to further optimize the user interface. We have built useful combinations of forms that we provide as “layouts” to MODO users. New layouts (be they rich or sparse) can be easily created and saved by both users and developers of MODO.


Toolpipe (custom tool creation)

MODO’s Toolpipe lets you create an infinite number of specialized modeling and selection tool variants that you can assign to hotkeys or other parts of the user interface. With the Toolpipe, you are able to combine MODO’s robust set of powerful modeling tools with falloffs and action centers in new combinations to customize the way a given tool feels, looks and affects geometry. You can either use MODO’s tools as supplied, or leverage the Toolpipe to create a tailored set of tools that work exactly the way you want them to.


Nexus

MODO development is based upon an internally developed architecture called Nexus® that provides a consistent and malleable foundation upon which to develop products. Nexus is a highly layered, cross-platform, generalized, time-aware architecture for rapid development of media applications—both 2D and 3D. We are actively involved in licensing this technology to third-party companies. Dassault Systèmes SOLIDWORKS Corp. and Bentley Systems have licensed Nexus technology to deliver rendering and animation capabilities for their customers.

PhotoView 360, built on Nexus

Nexus technology was used to jointly develop PhotoView 360, the new design visualization application from SOLIDWORKS. Designed to deliver new levels of interactivity, the software features physically based lighting, a library of realistic surface appearances and a collection of studio-quality lighting environments. Nexus is the core rendering technology behind PhotoView 360.

“Our primary goal in developing PhotoView 360 was to allow our customers to get to a great looking image with minimum effort and expertise. Nexus technology has allowed us to deliver a product to our customers that removes a lot of the mystery in rendering and delivers very rapid results.”
Austin O’ Malley, CTO at Dassault Systèmes SOLIDWORKS Corp.