## DMM Commands

Below are listed the commands exposed by the MLL. The scripts also exposes numerous commands. Those can be check-out by looking at DmmPlugin.py (located in the plug-ins folder of Maya).

animsave [directory name] | Save the contents of the DMM cache as a DMM animation .XML file. The file is named after the DMM scene node and saved in the directory specified. If no directory is specified the animation is saved in the current directory.
| directory name | String specifying a directory path
animload filename | Load a DMM animation .XML file into the cache. If the scene does not match the animation file, errors will occur.
| filename | String specifying a file path
dmmexport [-directory directory name] [-vshader vertex shader name] [-fshader fragment shader name] [-materials only] [-selection] | Export the current DMM scene or just selected DMM objects for the DMM viewer or a game engine. Tetrahedral meshes, surface meshes, physical materials, and the scene are all written out as files.
| -directory (-d) | Specify directory to put the exported files in
| -vshader (-v) | Specify the name of the vertex shader that should go in the scene file
| -fshader (-f) | Specify the name of the fragment shader that should go in the scene file
| -materials only (-m) | Only export the physical materials data
| -selection only (-s) | Only export the selected DMM objects (objects in the currently selected in Maya)
meshverify [-outputFileDirectory directory] [-verbose] [-silent] [-convex] [-watertight] [-noSelfIntersect] [-angleThreshold threshold angle in degrees] [-gapThreshold relative gap threshold] [-planarThreshold threshold value] [-uvThreshold threshold value] [-sameUVCheck] | Check the currently select polymesh for to see if can be used as a breakable surface mesh. Watertightness, self intersection, small faces, etc. are all checked. Problem faces are highlighted graphically on screen, and error messages created on the script editor window.
| -outputFileDirectory (-d) | Each time an irregularity is detected, a message is written to an output file named "err_mv" in the specified directory
| -verbose (-v) | More information is sent to the script editor window if this flag is on
| -silent (-s) | Suppresses all informational (non-error-related) messages
| -convex (-c) | Causes faces with vertex angles above 180 degrees to be detected
| -watertight (-w) | Causes the non-watertightness test to be performed
| -noSelfIntersect (-n) | Causes the self-intersection test to be skipped
| -angleThreshold (-a) | Minimum angle allowed in degrees
| -gapThreshold (-g) | Any face with a pair of vertices closer than this threshold is identified as a face with nearly co-located vertices
| -planarThreshold (-p) | How non-planar a face of the polymesh can be without an error report
| -uvThreshold (-i) | Enables the detection of faces with inconsitent UV coordinates and specifies the associated threshold
| -sameUVCheck (-m) | Enables the detection of faces with vertices having the same UV coordinates but different world coordinates
splintgen filename width height depth leftX bottomY topZ | Load a 2D texture map from a file and create a 3D splinter cage via extrusion. Currently only .png texture maps are supported.
| filename | path of texture map file
| width | Desired width of the splinter cage
| height | Desired height of the splinter cage
| depth | Desired depth of the splinter cage. This is the amount of extrusion
| leftX | X coordinated of the location of the splinter cage
| leftY | Y coordinated of the location of the splinter cage
| leftZ | Z coordinated of the location of the splinter cage