Anyone who uses Autodesk Maya in anger, especially those of us doing so on Linux platforms. All details have been culled from official documentation, mailing lists, Autodesk support and the occasional reverse engineering.
Many of these settings and better information can be gleaned by googling for Autodesk's official docs but there are also quite a few items on this page not listed in any official documentation.
This list is a living work-in-progress. So please share any updates, addendums or corrections using the feedback link at the bottom of this post.
-Paul
Maya provides to its users an enormous array of sporadically documented features and configuration options. These environment variables, XML config files and the like allow the user fine-grained control over:
- icons
- plug-ins
- modules
- Mel scripts
- Python scripts
- shaders
- image quality
- desktop integration
- tablet performance
- runtime stability
- more
- Maya 2011 or newer
- Linux, although much of this likely applies to Maya on Windows and OS X
- bash shell and not csh as the latter is bad for you
Following is a list of known Maya variables and what they configure. You can override these in your shell or embed them in wrapper script.
This variable defines your personal Maya application directory.
export MAYA_APP_DIR=/opt/autodesk/maya/2013.5
This is most useful when you want to run Maya in English on a Japanese version of Windows OS, i.e. never.
export MAYA_UI_LANGUAGE=en_US
export MAYA_UI_LANGUAGE=en_US/ja_JP
Alters the quality of jpegs written by Maya.
export AW_JPEG_Q_FACTOR=95
This issue is related to threading problem in the Maya Batch executable. Maya uses both TBB and OpenMP threading paths. When rendering we are seeing issues on the TBB side of the threading code were it seems to be calling too many thread counts and driving up the the systems ram causing and causing it to eventually crash almost instantly.
export MAYA_NO_TBB=1
If when using CGFX based shaders in a scene Maya crashes or freezes this will disable drawing of a shader which is still being evaluated.
export MAYA_NO_PARALLEL_DRAW=1
Set this environment variable to 1 to disable parallel memory copy.
In some cases, parallel memory copy is faster on Opteron and Nehalem based systems. However, it may also be slower on Xeon systems, in which case you may want to disable parallel memory. If you are using Maya 2011 on Xeon system and are faced with speed issues, this might be useful.
unset MAYA_NO_PARALLEL_MEMCPY
By default, if you reference the same file twice, on file open Maya copies the existing nodes instead of re-reading them from disk. Occasionally, using this built-in multiple reference optimization feature of file referencing can cause errors. This environment variable turns off the file referencing optimization and forces reference files to be explicitly read in all cases. This fixes Maya’s behavior in some situations that would otherwise be evaluated incorrectly.
unset MAYA_FORCE_REF_READ
Disable KDE's Qt imageformat plugins as Maya does not need them and they make Maya's startup 4 times slower. If you want to use KDE's Qt image formats and are willing to accept the performance degradation, unset this variable.
unset QT_PLUGIN_PATH
The searth path(s) for icon files, such as those used for shelf buttons. Icons are in BMP or XPM format.
export XBMLANGPATH=/somewhere/sensible:$XBMLANGPATH
The search path(s) for shared MEL scripts.
export MAYA_SCRIPT_PATH=/somewhere/sensible:$MAYA_SCRIPT_PATH
The search paths(s) for shared compiled plug-ins.
export MAYA_PLUG_IN_PATH=/somewhere/sensible:$MAYA_PLUG_IN_PATH
Defines the search paths for Maya module files. A module file describes the install location of a plugin which has been distributed as a module. Maya will append subdirectories of this install location to the following path variables: MAYA_PLUG_IN_PATH, MAYA_PRESET_PATH, MAYA_SCRIPT_PATH, PYTHONPATH and XBMLANGPATH. See Distributing Maya Plug-ins() for more information.
export MAYA_MODULE_PATH=/somewhere/sensible:$MAYA_MODULE_PATH
Location of Maya presets.
export MAYA_PRESET_PATH=
The default location of maya projects.
export MAYA_PROJECTS_DIR=
Maya will allways start in this project.
export MAYA_PROJECT=
Location of the maya.rayrc startup file.
export MAYA_MR_STARTUP_DIR=$MAYA_LOCATION/mentalray
Locations of mentalray include *.mi files.
export MI_CUSTOM_SHADER_PATH=$MAYA_LOCATION/mentalray/include
This feature is useful for tracking down error messages when Maya crashes upon startup.
export MAYA_CMD_FILE_OUTPUT=$TMPDIR/maya.log
Allows you to override the Expression Editor and use your own editor. The editor must be set to run in the foreground.
export WINEDITOR=/usr/bin/scite
Enable writing of crash report logs and dump files to temp directory. Crash report file example: MayaCrashLog[yymmdd.hhmm].log
export MAYA_DEBUG_ENABLE_CRASH_REPORTING=1
Enable verbose logging of hotbox actions for debugging issues on Linux. Slows Maya considerably.
export MAYA_HBDOWN_DEBUG=1
This is a Baseblack invention making it possible to install multiple versions of Maya simultaneously.
export MAYA_VERSION=default
Which versions can be specified are found issuing the command:
ls /opt/autodesk/maya/
The path to where Maya is actually installed.
export MAYA_LOCATION=/opt/autodesk/maya/$MAYA_VERSION
Temporary directory for Maya (playblasts, render, etc.).
export TMPDIR=/tmp/$USER/maya
Location of MentalRay library *.so files.
export MI_LIBRARY_PATH=$MAYA_LOCATION/mentalray/lib
Path for ShaderLibrary files
export MAYA_SHADER_LIBRARY_PATH=$MAYA_LOCATION/mentalray/shaderlibrary
Location of Maya Documentation. Use a URL shortener to make work around Autodesk's habit of moving their documentation URLs about at random.
export MAYA_HELP_URL=http://s.baseblack.com/maya2011docs
Use this environment variable to set your IP version
export MAYA_IP_TYPE=ipv4
For web browser.
export WEBBROWSER=/usr/bin/google-chrome
This variable is used to override the directory where movie files are found. The default is $MAYA_LOCATION/movies
.
export MAYA_MOVIE_DIR=$MAYA_LOCATION/movies
Threads to use when working with PaintEffects. Maximum 3.
export LIBQUICKTIME_PLUGIN_DIR=$MAYA_LOCATION/lib
Location of the libquicktime plugins
export LIBQUICKTIME_PLUGIN_DIR=$MAYA_LOCATION/lib
By default, this variable is set to 1 for the audio library used in previous versions of Maya. Set to 2 if you want to use the OpenAL audio library, which supports multiple track audio.
export MAYA_AUDIO_LIBRARY=1
This variable provides a string which lets you specify the OpenAL device driver to use. The system default driver is used by default. (Linux) On Linux this can be set to one of the following: alsa, oos, solaris, dsound, winmm, port, pulse, wave
export MAYA_AUDIO_OPENAL_DEVICE=pulse
Disables the ability to scrub sound.
unset MAYA_SOUND_SCRUB
Hotbox freezes Maya when switching contexts in Linux. Maya 2009 or later
export MAYA_HBDOWN_ENABLE=1
Hotbox freezes Maya when switching contexts in Linux. Maya 2009 or later
export MAYA_HBDOWN_TIME=5000
When Active Stereo is on, after the hotbox/menu have been dismissed, the viewport may need to be forced refreshed.
export MAYA_ACTIVE_STEREO_REFRESH=1
May help in ensuring that popup windows are raised to the top of the list when using Gnome desktop (metacity window manager).
export MAYA_FORCE_SHOW_ACTIVATE=1
Disables ARGB visuals from being considered when an application asks for possible visuals to use. Useful when the X desktop composite extension is enabled.
export XLIB_SKIP_ARGB_VISUALS=1
Allows the user to force the XError handler to be re-installed. Maya 2008 SP1P04 or later.
export MAYA_SET_XERROR=1
Disable backspace key as delete key.
export MAYA_DISABLE_BACKSPACE_DELETE=1
For NVIDIA cards so they don’t produce failures when using PaintEffects and ImagePlanes.
export MAYA _SLOW_DRAWPIXELS=1
Use this, when your selection of objects in the viewport is slow (selection lag).
export MAYA_NO_VERTEX_ARRAY_SELECT=1
Unknown effect.
export MAYA_NO_XGRAB=1
Enable when you have problem with ImagePlanes in viewports.
export MAYA_NON_POWER_TWO_OFF=1
Reduce flickering/stale view, if you are using Nvidia GeForce graphics cards/drivers.
export MAYA_GEFORCE_SKIP_OVERLAY=1
Set this flag to 1 so that you can preview your render in progress in imf_disp while rendering from the command line. You may need to adjust your firewall. In Linux you dont need this variable.
unset MI_MAYA_SOCKETS
By default, Maya converts non-native image file formats into temporary IFF files so that they can be read. This variable allows you to disable the conversion of mental ray .ct and .st files. To disable it, set the value to 0 (zero) or leave it undefined.
unset MAYA_DISABLE_MRFORMAT
By default, Maya converts non-native image file formats into temporary IFF files so that they can be read. This variable allows you to disable the conversion of mental ray .map files. Disabling this conversion saves scene export time and render time. To disable it, set the value to 0 (zero) or leave it undefined.
unset MAYA_DISABLE_MRMAP
If you are using a file texture that uses MirrorUV and the resolution of the hardware rendered texture in the scene view appears degraded, use this environment variable.
export MAYA_HW_FILE_TEXTURE_RESOLUTION_OVERRIDE=1
Set this flag to 1 to expose the Render Offscreen option in the Hardware Render Buffer > Render menu. When enabled, an offscreen buffer is used when rendering sequences using the Hardware Render Buffer. Single-frame renders will continue to be rendered into an on-screen buffer. During offscreen rendering, moving windows over the Hardware Render Buffer window does not affect the rendered frames, as would normally be the case.
export MAYA_OFFSCREEN_HRB=1
Quality of JPEG files that Maya renders out. (1-100) %
export AW_JPEG_Q_FACTOR=100
Allows you to control the subsampling quality of the rendered image. For best quality of JPG set it to “1×1,1×1,1×1″, default is 2×2,1×1,1×1.
export AW_JPEG_SUB_SAMPLING=1×1,1×1,1×1
Some randomness, or jitter, to the 8-bit color images are now disabled.
export MAYA_NO_JITTER_FINAL_COLOR=1
Maya includes the camera background in the calculation of reflection and refraction rays.
export MAYA_RENDERER_RT+BACKGROUND_COLOR=
Creates a left pointer cursor to use when resetting the cursor on use of the Marking Menus. Useful when using GNOME window managers that otherwise revert back to the default “X” cursor. Fred's favourite!
export MAYA_MMSET_DEFAULT_XCURSOR=1
Doesn't exist in 2010, added to 2009 after 2010 released - status in 2011 unknown. Effect unknown
export MAYA_MM_PAUSE_EXPOSE=1
Allows Maya to save SGI format image files with matte.
export WF_IMF_SGI_MATTE
Issue#101914 - colour correction needed for Cineon files
export WF_IMF_CIN_CORRECTION=both
Issue#101914 - colour correction needed for Cineon files
export WF_IMF_CIN_WHITE_POINT=685
Location of license file.
export LM_LICENSE_FILE=$MAYA_LOCATION/adlm/maya.lic
If you have multiple license files in your FlexLM directory you can set this environment variable to uniquely define your Maya license file and speed up the Maya start time.
export MAYA_ALT_EN=$MAYA_LOCATION/adlm/maya.lic
Use network or standalone.
export MAYA_LICENSE_METHOD=network
Location on the network of the license server software. Possibly deprecated with AdLM/Maya2010.
export [email protected]
Use 'unlimited' or 'complete'. Possibly deprecated with Maya2010.
export MAYA_LICENSE=unlimited
Use 1, 2 or 3 for greater verbosity.
export FLEXLM_DIAGNOSTICS=3
This enables the use of the AdLM Thin Client configuration file discussed separately below.
export AUTODESK_ADLM_THINCLIENT_ENV=$MAYA_LOCATION/adlm/AdlmThinClientCustomEnv.xml
In addition to the usual environment variables there is now at least one XML configuration file where one can shoot themselves in the foot with Maya settings.
This file is quite powerful in that one relocate the various directories the Maya installer creates into something organised, sensible, supportable and working.
From the Licensing options above, you must first enable the use of this file with the following environment variable:
export AUTODESK_ADLM_THINCLIENT_ENV=$MAYA_LOCATION/adlm/AdlmThinClientCustomEnv.xml
This is an XML file bearing options documented in the AdLM Thin Client User Guide. Not mentioned in that guide however is the extremely important key:
<ADLMCUSTOMENV VERSION="1.0.0.0">
This oversight has caused the author many days of existential pain and suffering.
The following file snippet actually works which is in itself a minor miracle:
<?xml version="1.0" encoding="utf-8"?>
<ADLMCUSTOMENV VERSION="1.0.0.0">
<PLATFORM OS="Linux">
<KEY ID="ADLM_COMMON_BIN_LOCATION">
<STRING>$MAYA_LOCATION/adlm/bin</STRING>
</KEY>
<KEY ID="ADLM_COMMON_LIB_LOCATION">
<STRING>$MAYA_LOCATION/adlm/lib64</STRING>
</KEY>
<KEY ID="ADLM_COMMON_LOCALIZED_DATA_LOCATION">
<STRING>$MAYA_LOCATION/adlm/en_US</STRING>
</KEY>
<KEY ID="ADLM_ERROR_TABLE_LOCATION">
<STRING>$MAYA_LOCATION/adlm</STRING>
</KEY>
<KEY ID="ADLM_PIT_FILE_LOCATION">
<STRING>$MAYA_LOCATION/adlm</STRING>
</KEY>
<KEY ID="ADLM_CASCADE_FILE_LOCATION">
<STRING>$MAYA_LOCATION/adlm</STRING>
</KEY>
</PLATFORM>
</ADLMCUSTOMENV>
Product keys are necessary for the installation of an Autodesk product. Here is a sampling of some of the Autodesk 2012 products:
657D1 = Maya 2012
128D1 = Max 2012
727D1 = MotionBuilder 2012
498D1 = Mudbox 2012
797D1 = Inventor Professional 2012
240D1 = Revit Architecture 2012
001D1 = AutoCAD 2012
From this sampling, you can extrapolate the product keys for the 2011 products:
657C1 = Maya 2011
128C1 = Max 2011
727C1 = MotionBuilder 2011
498C1 = Mudbox 2011
797C1 = Inventor Professional 2011
240C1 = Revit Architecture 2011
001C1 = AutoCAD 2011
This document was researched using the following resources: