Configuration Settings 3.12
mental ray default behavior and special properties can be set with the help
of configuration variables, which apply to all renderings that share this
configuration, like all users on a machine, or all renderings for a certain
project. Typically, such variables are set using the native
registry of mental ray, a platform independent
mechanism that is suitable for both standalone and embedded versions of the
software. A prominent example is the rayrc startup
configuration file used by standalone mental ray. Alternatively, certain
variables may be set in the runtime environment
of the running process using platform dependent commands. Such variables
will override the related registry setting in case it was set.
Note
The standalone mental ray allows to extend or override configuration options
on the command line.
Environment Variables
Environment variables can be set from a command prompt
with shell commands such as setenv (see the documentation of your
shell) before mental ray, or the application that mental ray is built into,
is started from the same shell. Environment variables that are set after
mental ray was started, or which have been set from a different shell, have
no effect. mental ray will generally work without setting environment variables.
Note
The standard rayrc startup configuration file for standalone mental
ray may not be found if the environment variable MI_ROOT is undefined.
- HOME
- Unix home directory, used to search for the user's local configuration files.
- HOMEDRIVE
- Windows NT home drive, such as C:.
- HOMEPATH
- Windows NT home directory. The concatenated path
%HOMEDRIVE%%HOMEPATH%
is used to search for the user's local configuration files.
-
MI_ASSEMBLY_PATH
- A colon-separated or semicolon-separated list of paths to search for
assembly .mi files.
- MI_FBDIR
- The default directory where temporary
frame buffer files are stored.
- MI_FBVIRTUAL
- Set the default virtual
frame buffer behavior. Values are
"none"
/"off"
,
"mapped"
/"on"
, or "cache"
, similar to
the related command line option.
- MI_LIBRARY_PATH
- A colon-separated or semicolon-separated list of paths to
search for files loaded with the link command.
- MI_LIGHTPROFILE_PATH
- A colon-separated or semicolon-separated list of paths to
search for lightprofile files.
- MI_MAP_PATH
- A colon-separated or semicolon-separated list of paths to
search for map data files.
- MI_MAP_CACHE_SIZE
- The size of the global cache for all maps currently present in memory,
in Megabytes. Given as a number.
- MI_RAY_HOSTSFILE
- Use this file name instead of the default
.rayhosts
to read host configuration for
distributed rendering.
- MI_RAY_INCPATH
- A colon-separated or semicolon-separated list of paths to
search for files included with the $include command.
- MI_RAY_OPTIONS
- A string of default command line options that are read by mental ray
standalone before the options given on the command line. This may be used
for common options such as -xcolor.
- MI_RAY3_SERVICE
- The IP service that mental ray uses to contact slaves on other
machines. The default is mi-ray3 for mental ray 3.x.
On Unix, service names are defined in
/etc/services or in the services NIS map.
- MI_RAY_SERVICE
- If the previous variable is not defined, this one is used
instead. This makes mental ray 2.x compatible with mental ray 1.9
while allowing both to coexist on the same machine. The default is
mi-ray.
- MI_RAY_SUBSTITUTE
- An optional list of blank-separated substitution instructions,
each in the form /search/replace/. Any other character
besides / will also work.
- MI_ROOT
- The directory that mental ray searches for the configuration file
rayrc.
- MI_STACKSIZE
- New thread stacks will be created with this size in kilobytes
if defined. The default is 16384 (16 MB) on
Unix and 4096 on Windows. 4096 is
nearly always sufficient except when very complex recursive shaders
are used.
- MI_TEX_LOOKUP_LOCAL
- This variable can be set in network parallel rendering in order
to look up and remap texture file paths on the individual rendering
hosts instead of on the master host only. This allows to locate
textures on the slave machines at a different file system path than
on the master host.
- Note
MI_TEX_LOOKUP_LOCAL should be set on all rendering hosts,
not just the master.
- Note
This will also causes file names to be echoed in the .mi format
without performing file path substitutions.
- SI_LOCATION
- The directory of the linktab.ini file, which may be used
by applications to customize file path mapping.
- TMPDIR
- A directory for temporary code or object files to be compiled
or linked. The default is /usr/tmp on
Unix and the current directory on Windows.
- USER
- The current user name. This is optional, and if it exists may be
stored in image file headers, for example.
The mental ray registry supports
lookups of environment variables. The form $var returns the value
of the environment variable var, and $?var returns 1 if
the environment variable var exists and 0 otherwise.
Registry Variables 3.12
Registry variables can be set from any .mi file. The special file
.rayrc
is automatically read by a standalone mental ray
upon startup for configuration purposes.
mental ray recognizes and uses registry variables that begin with
_MI_REG_ which have special meanings:
- _MI_REG_ASSEMBLY
- The directory where assembly files are stored, unless the
-assembly command-line option has been specified.
- _MI_REG_CCMESH_CHECK_TOPOLOGY
- If set to
"on"
, more expensive topology tests are done for
ccmesh objects to reject potentially invalid geometry early and avoid failures
during rendering later.
- _MI_REG_CCMESH_PTEX
- If set to
"on"
, all ccmesh objects are tessellated with ptex
support computed. This can be used to enable ptex support in existing scenes
where the bary object flag to mark for ptex is not specified.
- _MI_REG_FBDIR
-
The default directory where temporary
frame buffer files are stored.
- _MI_REG_FBVIRTUAL
- Set the virtual frame buffer
behavior. Values are
"none"
/"off"
,
"mapped"
/"on"
, or "cache"
, similar to
the related command line option.
- _MI_REG_INCLUDE
-
The search path where files included by $include commands are found,
in addition to paths set with the -I command-line option.
- _MI_REG_LIBRARY
-
The search path where shader libraries linked by link commands are
found, in addition to paths set with the -L command-line option.
- _MI_REG_LIGHTPROFILE
-
The search path where light profile files referenced by lightprofile
statements are found, in addition to paths set with the
-lightprofile_path command-line option.
- _MI_REG_MAP
- The search path where map data files are found, in addition to paths set
with the -M command-line option.
- _MI_REG_MAP_CACHE_SIZE
- The size of the global cache for all maps currently present in memory,
given as a number in Megabytes.
- _MI_REG_MEMORY_LIMIT
- The default memory limit in Megabytes, given as a number.
May be overridden on the mental ray
command line for a specific rendering.
- _MI_REG_METASL_BACKEND
- for MetaSL shaders, selects
the back-end to use for compilation and execution of the shader code.
Supported values are
CPP
or C++
for the C++
back-end using an external compiler, or LLVM
for the integrated
low-level virtual machine translation and execution engine.
- _MI_OPENEXR_MULTI_PART
3.12
- controls the use of the "multi-part" output in OpenEXR 2.0 used to store
multiple layers within the same image file. If set to
"off"
then
.exr images with more than one layer will be written in the original
single-part format to retain compatibility with older OpenEXR tools.
The default is "on"
.
- _MI_REG_STEREO_LEFT_SUFFIX
_MI_REG_STEREO_RIGHT_SUFFIX
- the strings applied as file name suffixes for the images of the left and
right eye in stereoscopic rendering mode.
- _MI_REG_TEXTURE
- an include path where texture image files referenced by
texture statements are found, in addition to paths set
with the -T command-line option.
- _MI_REG_TEXTURE_CACHE
- The value can be one of
"on"
, "off"
, or
"local"
. The value "local"
means that only textures
marked as local are cached, or any .map, which are always considered
as local. This behavior matches previous mental ray, and is the default.
With "off"
, texture caching is disabled and textures are always
loaded/memory-mapped in full resolution. With "on"
, the local
texture modifier is ignored and all textures with image formats supporting
caching are cached. This mode should not be used with multi-hosted rendering.
- _MI_REG_TEXTURE_CACHE_SIZE
- Set a memory limit for the texture cache in Megabytes. By default (value 0),
the cache limit is determined dynamically based on the size of all textures
loaded into mental ray, as in previous versions. The minimal value of the
cache is 20 MB.
- _MI_REG_TILE_SIZE
- Set the tile size for the output of image files with
tiling enabled. The value is a string
with one or two numbers, like
"X"
(for quadratic tiles) or
"X Y"
. The default is 128×128.
mental ray provides and sets registry variables that begin with
_MI_RAY_ as follows:
- _MI_RAY_VERSION
- the full version number of mental ray, like "3.13.1.1".
- _MI_RAY_MAJOR_VERSION
- the major version number of mental ray, like "3".
- _MI_RAY_MINOR_VERSION
- the minor version number of mental ray, like "3.13".
- _MI_RAY_BRANCH
- the branch version number of mental ray, like "3.13.1".
- _MI_RAY_REVISION
- the revision version number of mental ray, like "85991".
- _MI_RAY_SYSTEM
- a general computer system name that mental ray has been compiled for.
This is one of the strings "windows", "linux", or "macosx", and "unix"
for all other systems.
- _MI_RAY_PLATFORM
- the compile platform string of mental ray. Common values are
"nt-x64-vc11", "linux-x86-64-gcc4", and "macosx-x86-64".
- _MI_RAY_DATE
- a readable form of the build date of mental ray, like "Jan 03 2015".
Copyright © 1986, 2015
NVIDIA ARC GmbH. All rights reserved.