Houdini 20.5 Reference

Environment variables

See how to set environment variables.

Variables

  • HOUDINI_AUTHOR

    Controls the username and machine name used when saving HDAs and hip files. Normally your login name and hostname are used, but setting this to myself@mydomain will use a user name of myself and a hostname of mydomain instead.

  • HOUDINI_DISABLE_CONSOLE

    If set, disables creation of floating consoles on Windows machines.

  • HOUDINI_TEXT_CONSOLE

    If set, instead of creating a floating console, a normal window shell will be created on NT machines.

  • HOUDINI_WINDOW_CONSOLE

    On the Windows operating system, the setting of this environment variable will force the creation of a floating console regardless of whether its output is redirected. This is only necessary for broken shells that incorrectly start up Houdini window applications with redirected output. At the time of this writing, only Cygwin-compiled shells require this.

  • HOUDINI_VERBOSE_ERROR

    Print out unexpected file save errors to the console as well as displaying them in error boxes.

  • HOUDINI_DISABLE_FILE_LOAD_WARNINGS

    If set, suppresses the dialog that displays warnings encountered while loading a file.

  • HOUDINI_OLD_SPINNER

    If set, the old style interrupt dialog graphic will be used (i.e. the spinning pie).

  • HOUDINI_OLD_CONST_BEHAVIOUR

    If set, the old behavior dealing with constant() expression segments is used instead. The old behavior allows changing the value of a constant() expression channel segment at any given frame within it, not just at its boundaries.

  • HOUDINI_SHOW_OLD_RENDER_PROPERTIES

    If set, render properties from previous releases will be displayed.

  • HOUDINI_SHOW_OLD_SHOPS

    If set, SHOPs from previous releases will be displayed.

  • HOUDINI_DISABLE_CPUID

    Obsolete control.

  • HOUDINI_DISABLE_MMX

    If set, disable MMX support for COPs and VEX. This also disables XMMX and SSE. This will reduce COPs processing speed by about 30%.

  • HOUDINI_DISABLE_XMMX

    If set, disable Extended MMX support for COPs and VEX. Extended MMX is implemented in the original Athlons and Pentium IIIs. This also disables SSE. This will reduce COPs processing speed by about 20%.

  • HOUDINI_DISABLE_SSE

    If set, disable SSE support for COPs and VEX. SSE is implemented in Pentium IIIs and higher and Athlon XPs (not the original Athlons). This will reduce COPs processing speed by about 10%.

  • HOUDINI_DISABLE_3DNOW

    If set, disable 3DNow support for COPs and VEX. 3DNow is available in AMD Athlon and Cyrix CPUs. 3DNow is not used if the CPU supports SSE (which is any Athlon XP, MP, 64 or Opteron).

  • HOUDINI_DISABLE_AVX

    If set, disable use of AVX processor instructions (where available). AVX instructions are present starting with Intel Sandy Bridge (released Q1 2011) and AMD Bulldozer (released Q4 2011) processors.

  • HOUDINI_DISABLE_JEMALLOCTEST

    If set, disable the test to see if jemalloc has successfully been loaded. On platforms that expect jemalloc, failure to link it will result in memory fragmentation and poor performance. Thus, a warning will be printed. However, it may be this is an intentional override, in which case setting this environment variable will suppress the warning.

  • HOUDINI_OSX_SWAP_DEL_AND_BACKSPACE

    On Mac OS X, when this variable is set the meaning of the keyboard 'delete' and 'backspace' keys are interchanged.

  • HOUDINI_ANONYMOUS_STATISTICS

    If set to 1, this will forcibly allow Houdini to gather and send anonymous usage statistics to help improve the product. Setting to 0 will disable statistic collection. The default of -1 will use the anonymous usage statistics settings in the preferences.

  • HOUDINI_ANONYMOUS_STATISTICS_UPLOAD_ERRORS

    If set, Houdini will print errors to the console when Houdini encounters network or server errors when attempting to upload anonymous usage statistics. By default, Houdini will not print anything if these errors occur.

  • HOUDINI_PROMPT_ON_CRASHES

    If set to 0, Send Crash pop-up would never prompt but would send the crash log when HOUDINI_ANONYMOUS_STATISTICS is set to 1. Setting to 1 would always prompt Send Crash pop-up. The default of -1 uses current behavior.

  • HOUDINI_MAX_DESCRIPTORS

    On Windows, specifies the maximum number of simultaneously open files at the stream I/O level. On other platforms, please use the shell command (ulimit -n or limit) to set the file limit.

  • HOUDINI_STATS_API_URL

    This variable controls which web URL Houdini sends anonymous usage statistics to. The default value is http://www.sidefx.com/stats/api.

  • HOUDINI_SHOW_CUSTOM_TOOLS

    If set to 1, the name of the custom tool will be included when used with anonymous statistics. The format will then be <name>(custom_tool) instead of just (custom_tool). By default this is set to 0 (off).

  • HOUDINI_NO_START_PAGE_SPLASH

    If set to 1, Houdini will not attempt to open the Start Here splash page or the page that asks permission to turn on anonymous usage statistics.

  • HOUDINI_CASE_SENSITIVE_FS

    If set to 1, this causes Houdini to treat the file system as case-sensitive. This value defaults to 0 for Windows and Max OS X. For all other platforms, it defaults to 1.

  • HOUDINI_COREDUMP

    Setting this environment variable to 1 is useful for debugging HDK crashes. On Unix systems, Houdini will attempt to dump a core file instead of simply exiting on the SIGILL, SIGEMT, SIGBUS or SIGSEGV signals. Please see signal(5) for more information. On Windows, this will enable just in time debugging for debuggers such as Visual Studio.

  • HOUDINI_NO_ENV_FILE

    If set, Houdini will not load the $HOUDINI_USER_PREF_DIR/houdini.env file. This allows large facilities with standard environments to disable the houdini.env file by setting this variable in the script which they use to launch Houdini.

  • HOUDINI_NO_ENV_FILE_OVERRIDES

    This environment variable is similar to HOUDINI_NO_ENV_FILE, but is less extreme. Setting this stops the user from being able to override existing variables in their houdini.env file. If they try to do so, a warning will be printed.

  • HOUDINI_NO_LEGACY_MENUS

    When set, Houdini will not load the old MainMenuMaster, MaindMenuEscape, and MainMenuCommon menu files. It will only use the new MainMenuMaster.xml, MainMenuEscape.xml, and MainMenuCommon.xml.

  • HOUDINI_DSO_ERROR

    Determines if DSO/DLL errors on plug-ins will be printed out to the console. This can help in debugging custom operators.

    By default this is disabled.

    The existence of the variable in the environment (or setting its value to 1) will cause dynamic linking errors to be output.

    Setting the value to 2 will cause more verbose errors to be printed.

    Setting the value to 3 will cause all DSO related messages to be printed.

    Setting the value to 4 will cause timing messages to be printed.

  • HOUDINI_DSO_DEEPBIND

    Only applicable On Linux. If set to 1, then all dynamically loaded DSO will be loaded using RTLD_DEEPBIND.

  • HOUDINI_DSO_EXCLUDE_PATTERN

    If set, this specifies a glob pattern that is used to exclude matching DSO/DLL files. The precise accepted syntax is as follows:

    • If it begins with a /, then it matches at the beginning, else the pattern starts matching at any path component.

    • * matches any path component, but stops at slashes.

    • ** matches anything, including slashes.

    • ? matches any character except a slash (/).

    • [...] matches one of the enclosed characters, eg. [abc]

      • - within [...] denotes a character range, eg. [a-c]

      • If first character after [ is ! or ^, then it matches anything except the enclosed characters.

    • {x,y} matches the any of the comma(,) separated patterns within

  • HOUDINI_CPP_EXPAND_PRAGMA

    Determines whether the C pre-processor will perform macro expansion on #include, #sinclude, and #pragma statements.

  • HOUDINI_ENABLE_UNDO_BUG_NOTIFY

    If set to 1, this environment variable enables verbose output for potential undo bugs as they occur in Houdini.

  • HOUDINI_TIFF_BOTTOMLEFT

    Older versions of Houdini generated TIFF files with the first scanline of data representing the bottom of the image. This control can be turned on to replicate the behavior of older versions of Houdini.

  • HOUDINI_TIFF_SAMPLEFORMAT

    If set, the TIFF SAMPLEFORMAT tag will be output in all cases. This may cause older versions of the TIFF library to print warnings/errors about unknown tags.

  • HOUDINI_DISABLE_IMAGE_DSO

    If set, no custom image formats will be loaded. Only built-in formats will be installed.

  • HOUDINI_THREAD_IMAGE

    If set, some old-style compositing operations will be multi-threaded. On some platforms, this can provide a performance boost. However, on other platforms, this can cause a performance hit. This also affects Houdini applications like ipaint.

  • HOUDINI_LMINFO_VERBOSE

    Typically, Houdini will print out warnings at start-up time if licenses are due to expire shortly. You can set this variable to change this behavior.

    0

    No warnings will be shown when applications start up.

    1

    Warnings will only be shown in the terminal when applications start up.

    2

    Warnings will only be shown as graphical pop-ups when applications start up.

    3 (default)

    Warnings will be shown both in the terminal and as graphical pop-ups when applications start up.

  • HOUDINI_NOHKEY

    Setting this environment variable will prevent Houdini from launching the apprentice license auto-installer and the license administrator when a license check fails.

  • HOUDINI_NOHKEY_APPRENTICE

    Setting this environment variable will prevent Houdini from launching the apprentice license auto-installer but will cause it to immediately launch the license administrator when a license check fails.

  • HOUDINI_NOHKEY_LOGIN

    Setting this environment variable will prevent Houdini from launching the apprentice license auto-installer and the license administrator but will cause it to launch a browser to https://www.sidefx.com/services/sesinetd and a message dialog asking users if they would like to retry checkout.

  • HOUDINI_NOHKEY_LOGIN_RELAUNCH

    Setting this environment variable will prevent Houdini from launching the apprentice license auto-installer and the license administrator but will cause it to launch a browser to https://www.sidefx.com/services/sesinetd/?relaunch=true&username=USERNAME

  • HOUDINI_CURL_SHARE

    Allow curl to reshare already open connections, DNS caches and ssl sessions when possible.

  • HOUDINI_CURL_IPVERSION

    Allows selecting what kind of IP address to use when resolving the host names. This is only interesting when using host names that resolve to addresses using more than one version of IP.

    0 (default)

    Select either IPv4 or IPv6.

    1

    Select IPv6 only.

    2

    Select IPv4 only.

  • HOUDINI_NO_ASSET_INSTANTIATION

    Setting this environment variable will prevent Houdini from auto-instantiation when importing assets.

  • HOUDINI_JITTERY_CAMERA

    Setting this environment variable will prevent the direct assignment of the camera transform to the GL view transform. This will cause the camera to jitter in some cases. It, however, fixes reversed-perspective problems with the ES Tornado 3000 video card.

  • HOUDINI_VEX_DISABLE_AUTO_FOLDING

    Disables a specific optimization in Mantra/VEX which tries to selectively retain parameters to the VEX code, so that the same optimized code can be re-used between multiple instances that have different parameter values. If this optimization is off, then any VEX code that is instantiated multiple times with different parameter values, will have each instance treated as a unique optimization.

  • HOUDINI_VEX_RETURNBYREFERENCE

    In very old code, VEX would allow functions that computed a single value to also pass the return value by reference (e.g. sin(result, value) instead of result = sin(value)). This form of the function was marked as deprecated over 5 years ago and is now no longer allowed. Enabling this variable will re-instate the deprecated functions.

  • HOUDINI_VEX_PROFINFO_HTML

    If this variable is set, the VEX profiling information will be output using HTML instead of text.

  • HOUDINI_VEX_DISABLE_INSTANCE_CACHE

    Disables global caching of VEX shaders for the SOP and POP contexts so that shader-local data (such point clouds generated with pcgenerate) are regenerated with each cook of that operator.

  • HOUDINI_VEX_DISABLE_JIT

    Disables just-in-time compilation of VEX shader fragments to native machine code. This variable is still used, but is deprecated in favor of HOUDINI_VEX_JIT_OPTIMIZE.

  • HOUDINI_VEX_JIT_OPTIMIZE

    Specify JIT optimizations for VEX compilation. The string for this variable is a comma separated list of various options. If the option is found in the string. If the option token is found, the flag will be turned off. The flag can be turned off by prefixing the token with no-. Alternatively, the value for the flag can be specified with the suffix =value.

    For example

    • native: Enable native JIT code generation

    • no-native: Disable native JIT code generation

    • native=on: Enable native JIT code generation

    • native=off: Disable native JIT code generation

    Currently the following options are recognized

    • cache - Enable JIT specialization cache (default ON)

    • native - Enable native JIT code generation (default ON)

    • global - Perform global optimization across import calls (default ON)

    • skylake - Work around a bug triggered on Skylake processors (default ON)

    • dir - Overrides the default location of the compile cache (default $HOUDINI_TEMP/VEX_CodeCache)

  • HOUDINI_VEX_ASSERT

    Sets the behavior for the VEX assert_enabled() function. If the variable is set, the assert_enabled() function returns true. This has the effect of enabling the assert() macro (defined in assert.h).

  • HOUDINI_VEX_MODULECACHESIZE

    Sets the number of LLVM modules cached by VEX. Each cached module consumes some memory, but can save re-compiles if the same shader is used multiple times. A value of -1 indicates that the module cache will be unbounded.

  • HOUDINI_VEX_MEMORYCACHESIZE

    For efficiency, VEX has it’s own memory allocator. This variable controls the cache size for in MB each VEX variable type. The cache is split across threads, so machines with more cores may require larger cache sizes. This typically comes into play when there are large arrays being processed in VEX.

  • HOUDINI_MAXTHREADS

    Controls the maximum number of threads to use for compute-intensive operations in Houdini.

    The default of 0 means to use all available processors.

    Positive values will limit the number of threads that can be used. A value of 1 will disable multithreading entirely (limiting to only one thread). Positive values will be clamped to the number of CPU cores available.

    If the value is negative, the value is added to the maximum number of processors to determine the threading limit. For example, a value of -1 will use all CPU cores except 1.

    This control can be overridden by the -j option to most applications.

  • HOUDINI_MAXSPUS

    Controls the maximum number of SPUs to use in Cell/BE releases of Houdini. The default of -1 means to use all available SPU resources, while a value of 1 will disable SPU use entirely. Positive values will clamp the number of SPUs that can be used.

  • HOUDINI_USE_HFS_PYTHON

    Note

    This variable is no longer used.

    Houdini defaults to loading the Python library that is shipped in $HFS. You can instruct Houdini to load a different Python library by modifying the library search path in your operating system (Mac and Linux only). You may want to do this if there are 3rd-party modules installed in a different Python distribution that you wish to make available in Houdini.

    On Linux set the LD_LIBRARY_PATH environment variable to include the directory containing the Python library before launching Houdini.

    For example, in a terminal you can run:

    export LD_LIBRARY_PATH=/path/to/python/lib
    
    cd /opt/hfsX.Y.ZZZ
    source ./houdini_setup
    
    houdini
    

    You can alternatively set LD_PRELOAD instead of LD_LIBRARY_PATH if you want to load the Python library but not any unwanted libraries that are in the same directory.

    For example:

    export LD_PRELOAD=/path/to/python/lib/libpython2.7.so.1.0
    
    cd /opt/hfsX.Y.ZZZ
    source ./houdini_setup
    
    houdini
    

    Similarly on Mac set the DYLD_LIBRARY_PATH environment variable to include the directory containing the Python framework library. When using DYLD_LIBRARY_PATH you must launch the Houdini executable in the application bundle instead of the executable in $HFS/bin.

    For example, in the Houdini Terminal you can run:

    export DYLD_LIBRARY_PATH=/System/Library/Frameworks/Python.framework/Versions/2.7
    
    $HFS/Applications/Houdini\ FX\ X.Y.ZZZ.app\Contents\MacOS\houdinifx
    

    You can alternatively set DYLD_INSERT_LIBRARIES instead of DYLD_LIBRARY_PATH to load the Python framework library.

    For example:

    export DYLD_INSERT_LIBRARIES=/System/Library/Frameworks/Python.framework/Versions/2.7/Python
    
    $HFS/Applications/Houdini\ FX\ X.Y.ZZZ.app\Contents\MacOS\houdinifx
    
  • HOUDINI_PYTHON_VERSION

    Note

    This variable is no longer used.

  • HOUDINI_PYTHON_BIN

    Note

    This variable is no longer used.

    If you are loading a different Python library into Houdini (see note for HOUDINI_USE_HFS_PYTHON) and you need to additionally set the Python prefix path then instead of setting HOUDINI_PYTHON_BIN, set the PYTHONHOME environment variable.

  • HOUDINI_PYTHON_LIB

    Note

    This variable is no longer used.

    See the note for HOUDINI_USE_HFS_PYTHON for instructing Houdini to load a different Python library.

  • HOUDINI_PYTHONWARNINGS

    When set, this overrides the default Python 3 interpreter behavior for warnings (similar to the PYTHONWARNINGS environment variable used by the native Python interpreter). This value is directly added to sys.warnoptions. Valid values are: default, error, ignore, always, module, once. For more information on what these values mean, please consult the Python warnings module documentation on filter actions.

    This variable is ignored on Python 2 builds.

  • HOUDINI_OGL_MAX_GL_VERSION

    By default this is zero, indicating that Houdini should use all available features that the OpenGL driver provides. It can be set to any OpenGL version (major.minor, like “2.1”) and only those OpenGL features that were part of the OpenGL core at that version will be enabled.

  • HOUDINI_OGL_ENABLE_TEXTURE_SEQUENCES

    Defining this variable enables the AGP texturing with large texture sequences, which may cause the X server seizing when the application quits (observed on nVidia cards with drivers 7174 and less). When this variable is not defined, Houdini deletes last raster texture before using a new one.

  • HOUDINI_OGL_DUMP_SHADER_ERRORS

    If present, GLSL compilation errors will be dumped to the console when encountered. This should only be used for debugging purposes.

  • HOUDINI_OGL_CORE_PROFILE

    If set to 1, the OpenGL core profile will be used. On Windows and Linux, this can be set to 0 to use the OpenGL Compatibility profile to allow OpenGL 1.x and 2.x API calls and shaders. OS X does not offer the compatibility profile with a OpenGL 3.2+ context, so this variable has no effect on OS X (Core Profile is always used on OS X). The default is 0 on Windows and Linux, and 1 on OS X. If a Compatibility profile fails to provide OpenGL 3.2 or higher, Houdini will attempt to use the core profile instead.

  • HOUDINI_ENABLE_RETINA

    If set to 0, turns off Houdini’s support for retina displays under OS X. This will cause Houdini to act as if the display has half the resolution it actually has, resulting in a slightly pixelated interface. The advantage is that Houdini will also use less Video RAM for buffers, and run fewer pixels through the OpenGL shader pipeline, resulting in slightly increased performance. Linux and Windows are not affected by this setting.

  • HOUDINI_HIP_FROM_PATH

    When loading .hip files, force the Houdini HIP variable to the path of the HIP file specified rather than the HIP variable set inside hip file.

  • HOUDINI_SET_PWD_TO_HIP

    When setting the HIP variable, set the current working directory of the application to that directory if this variable is set to 1. If set to zero, changing the value of Houdini’s HIP variable does not affect the application’s current working directory. The default value of this option is 1.

  • HOUDINI_PATHMAP

    This string defines multiple mappings represented as a Python-style dictionary. These mappings are used when a given opened path fails to find fallbacks.

    Mappings can map one directory to another directory. The key is the directory to map and the value represents the destination directory. For example:

    { "c:/temp": "/tmp", "/mnt/render": "//storage/share/render" }
    

    would create two directory mappings.

  • HOUDINI_COMPARE

    This string defines the command line to launch an external compare (diff) program. The following variables can be used when constructing the command line:

    "$OLDPATH"

    The currently saved op type

    "$NEWPATH"

    The modified op type data

    "$OLDTITLE"

    A title to use for the saved op type data instead of the temp file name (if your favorite differ supports this)

    "$NEWTITLE"

    A title to use for the saved modified op type data instead of the temp file name (if your favorite differ supports this)

    Use quotes generously to avoid problems with spaces.

  • HOUDINI_HIP_DEFAULT_NAME

    The default .hip file name. This defaults to “untitled.hip” and is used to initialize the HIP filename when starting a new Houdini session.

  • HOUDINI_DEFAULT_RENDERERS

    This variable provides a comma separated list of renderer(s) to use, overriding the preferences entirely. The format of the names should be the same as the render.activelist.val value in $HIH/houdini.prefs. Renderers enabled through this variable cannot be turned off through the preferences dialog.

  • HOUDINI_VIEW_RMAN

    This variable specifies the command to run when View: RMan is chosen from the viewport rendering menu.

  • HOUDINI_DEFAULT_RIB_RENDERER

    This variable is used in the creation script of the RIB output driver to create parameters appropriate for a particular RIB renderer. See $HH/scripts/out/targets.

  • HOUDINI_RIBSHADER_DIR

    This variable specifies the directory where Houdini should put RenderMan shaders compiled from VOP Networks. The default is $HOUDINI_TEMP_DIR. Only the compiled shader is placed in this directory. The source code for the shader is always put in $HOUDINI_RIBTEMP_DIR or $HOUDINI_TEMP_DIR.

  • HOUDINI_RIBTEMP_DIR

    This variable specifies the directory where Houdini should put RenderMan intermediate (i.e. source and error) files while generating compiled shaders from VOP Networks.

  • HOUDINI_THUMB_RENDER

    This provides a default value for the -r option of the thumbrender application. This application is used to render thumbnails for the SHOP palette.

  • HOUDINI_HUSK_DEFAULT_HEADLIGHT

    Specifies the default value for the --headlight option for husk. This determines the type of headlight which will be added to husk when there are no lights found on the stage. The default is distant but can be set to none"or dome to get different behaviour.

    Note that husk may not be able to detect geometry lights, so in some cases, husk may add a headlight erroneously. Setting the value to none will address this issue.

  • HOUDINI_HUSK_DEFAULT_DELEGATE

    The default Hydra delegate husk uses to render the image.

  • HOUDINI_VIEW_MANTRA

    This variable specifies the command to run when View: Mantra is chosen from the viewport rendering menu.

  • HOUDINI_DISABLE_EXPORT_RENAME

    This variable disables the immediate recooking of exported CHOPs whenever a new node is created or when an existing node is renamed. For example, if you have a chop that is exporting to /obj/geo*, then it requires recooking if an object is renamed from /obj/foo to /obj/geo1. To disable this behavior, set this environment variable to 1.

  • HOUDINI_HQUEUE_SERVER

    This variable stores the default value for the HQueue Server parameter in HQueue ROP nodes and HQueue Scheduler TOP nodes. If not explicitly set, then the variable is set to “http://localhost:5000”.

  • HOUDINI_HQUEUE_HFS

    This variable stores the default value for the Universal HFS parameter in HQueue ROP nodes and HQueue Scheduler TOP nodes. If not explicitly set, then the variable is set to “$HQROOT/houdini_distros/hfs.$HQCLIENTARCH”.

  • HOUDINI_HQUEUE_HFS_LINUX

    This variable stores the default value for the Linux HFS Path parameter in HQueue ROP nodes and HQueue Scheduler TOP nodes. If not explicitly set, then the variable is set to “$HQROOT/houdini_distros/hfs.$HQCLIENTARCH”.

  • HOUDINI_HQUEUE_HFS_MACOS

    This variable stores the default value for the macOS HFS Path parameter in HQueue ROP nodes and HQueue Scheduler TOP nodes. If not explicitly set, then the variable is set to “$HQROOT/houdini_distros/hfs.$HQCLIENTARCH”.

  • HOUDINI_HQUEUE_HFS_WINDOWS

    This variable stores the default value for the Windows HFS Path parameter in HQueue ROP nodes and HQueue Scheduler TOP nodes. If not explicitly set, then the variable is set to “%HQROOT%”/houdini_distros/hfs.%HQCLIENTARCH%".

  • HOUDINI_HTTP_NOPROXY

    This variable control the list of connection url that should not go through a proxy if a proxy is setup. The default is localhost,127.0.0.1. Note this variable is used in favour of the system NO_PROXY environment variable. See libcurl CURLOPT_NOPROXY for more details.

  • HOUDINI_HTTP_PROXY

    This variable control the proxy URL that should be used when making HTTP(s) requests. Note this variable should be used when sidefx products should be using a different proxy from the rest of the system. This variable is used in favour of the system environment varialbe HTTP_PROXY and HTTPS_PROXY. See libcurl CURLOPT_PROXY for more details.

  • MANTRA_FORCE_RAY

    Force mantra to use raytracing (same as -r option)

  • MANTRA_ENGINE_PROCEDURAL

    Specifies the default behavior for enabling the engine procedural in mantra. If the -e command line option isn’t specified on the command line, this setting determines how the engine procedural will enabled. Currently, the different possible values are none, basic or full. Note that full will cause mantra to consume an Engine license (not a Render license).

    Specifying the -e option on the mantra command line overrides this variable.

  • MANTRA_DISABLE_FOGBOX

    When rendering fog, mantra will create a matte shaded object automatically so the fog will be picked up in the background. Setting this variable disables this feature.

  • MANTRA_ENABLE_NETWORK_RENDER

    Enables the -H and -n command line options for network rendering.

  • MANTRA_NONRAT_ERROR

    Normally, mantra will automatically convert texture files that are not in .rat format to .rat format internally - which can slow down render startup. To disable automatic conversion to .rat format and instead print out an error when textures are not in the native format, set this variable.

  • MANTRA_VECTOR_BIND_MODE

    When binding texture attributes to VEX shader parameters, mantra checks whether the size of the geometry attribute (float[2] (UV) or float[3] (UVW)) matches the size of the parameter type (vector2 or vector).

    By default, mantra allows the two sizes to NOT match, and either fills in or discards the extra (W) value. You can set this variable to change this behavior.

    0

    Strict mode: mantra does not bind attributes to parameters if they have different sizes.

    1

    Upsize mode: mantra will allow float[2] attributes to bind to vector parameters (setting the third component to 0), but does not bind float[3] to vector2.

    2

    Downsize mode: mantra will allow float[3] attributes to bind to vector2 parameters (discarding the third component), but does not bind float[2] to vector.

    3 (default)

    Lenient mode: mantra will bind float[2] attributes to vector parameters, and float[3] attributes to vector2 parameters, filling in or discarding the extra component as necessary.

  • MANTRA_LINEAR_CREASES

    Revert to the subdivision crease algorithm used in Houdini 12.5 and earlier. Subdivision creases in mantra now use Pixar-style creasing for Houdini 13 and later.

  • HOUDINI_RMAN_INCLUDE_FIX

    Setting this variable will cause the order of pre/post includes to be different when generating RIB. This allows for proper motion blur of RiReadArchive geometry read using the include files.

  • HOUDINI_MI_DISABLE_FLIP_RMAP

    When auto-generating reflection maps for MentalRay, one of the images is flipped by default. Setting this variable will turn the flipping off.

  • HOUDINI_DISABLE_SOHO_SPOOLING

    When this variable is defined, interactive rendering from within Houdini will send data directly to the renderer over a pipe rather than first saving it to a temporary file and then spooling it to the renderer in a separate thread.

  • HOUDINI_MMB_PAN

    When this variable is defined, the mouse buttons are remapped so that the left button tumbles, middle mouse pans, and right mouse button zooms. This is the setting used in Houdini version 8.1 and earlier.

  • HOUDINI_DISABLE_SAVE_THUMB

    Disable saving of thumb-nails in .hip files. This makes .hip files smaller and faster to save/load.

  • HOUDINI_UI_COREDUMP

    Prevent Houdini from trying to saving a .hip file when a crash is detected. Instead, Houdini will simply crash.

  • HOUDINI_UI_USE_RADIALMENU_MASKS

    Controls if a mask is used for drawing the radial menus. This is required on some window managers that don’t handle transparency, so is 1 by default for Linux. But other window managers don’t work well with the mask and leave garbage behind, so this can be set to 0 for those systems.

  • HOUDINI_DISABLE_HUD

    Disable the HUD, or the screen overlay shown in the viewport. This option can be used when the window manager on Linux doesn’t handle transparency properly, leaving the 3D viewport black as a result. Defaults to 0.

  • HOUDINI_USER_PREF_DIR

    The directory to store user preference files. The value of this variable must include the substring __HVER__, which will be replaced at run time with the current MAJOR.MINOR version string. On Windows and Linux, this defaults to the expanded value of $HOME/houdini__HVER__. On Mac OSX, it will also use this default if the directory exists, else it uses the expanded value of $HOME/Library/Preferences/houdini/__HVER__.

  • HOUDINI_ENABLE_FPS_SCALE

    If enabled, it will stretch all keys in your animation so that the time at the start of the last keyframe is the total animation length when you change the frame rate of your animation. Usually, when you change your animation frame rate, the last keyframe will end up at a fractional keyframe of your new frame rate because each frame in Houdini is actually a 1/FPS seconds in length. Note that when you do this, the actual timing of your animation will be changed when you modify your frame rate.

  • HOUDINI_DISABLE_FPS_MAINTAIN_FSTART

    Starting in Houdini 19.5, changing the frame rate will preserve the start frame, and shift key times to maintain their timing relative to the start frame. Setting this environment variable to 1 will revert to the previous behaviour, shifting keys to maintain their timing relative to time 0, and modifying the start frame to preserve its timing relative to time 0. Note that this is only applicable if the starting frame is not at frame 1. Defaults to 0.

  • HOUDINI_ENABLE_TABLET

    Enable Wacom tablet support on Linux and Windows. This defaults to 1.

  • HOUDINI_ENABLE_3DMOUSE

    Enable 3D mouse support. This defaults to 1.

  • HOUDINI_USE_NATIVE_FILE_CHOOSER

    This variable controls whether Houdini will use the file chooser dialogs provided by the operating system. By default Houdini will try to use them, but only on platforms on which Houdini supports native file choosers. If this variable is set to 0, Houdini will use own file browser dialogs. There are three levels that this variable can specify.

    0

    Only use Houdini’s own file choosers. This is the default behavior.

    1

    Houdini and MPlay will use native file choosers for their File ▸ Open… items in their main menus. For any other file browsing, Houdini will use own file choosers.

    2

    If possible, Houdini will use native file choosers for browsing any file.

  • HOUDINI_MAX_FILE_HISTORY

    This variable controls the maximum number of items kept in the recent files history lists. Its value can range from 1 to 64 inclusively.

  • HOUDINI_X11_SYNCHRONOUS

    Force Unix X11 servers to be synchronous. If enabled, this may affect performance by slowing down redraws.

  • HOUDINI_VIEW_METACAM

    Obsolete control.

    Used to specify Houdini digital assets lockable to the view. Please, use the desired light or a camera as a Representative operator for the HDA, which can be specified in the Basic tab of the asset properties.

  • HOUDINI_SKIP_NAME

    Avoid printing viewport name in Houdini.

  • HOUDINI_TOP_POS_SINGLE_PASS

    Set this environment variable to force only a single pass for drawing the wireframe outside of stamped projections in the TOP texture positioner view. Otherwise multiple passes are used to only draw the frame outside of the stamped projection.

  • HOUDINI_IPLAY_IP

    Force “ip” image device to use iplay instead of mplay. This behavior can be overridden using the HOUDINI_IP_COMMAND and HOUDINI_IP_COMMAND_FLIP controls.

  • HOUDINI_CONSOLE_LINES

    Number of lines to store in the Windows console

  • HOUDINI_CONSOLE_FLAGS

    The flags to control what is included in console output. Including the date is the default for this option.

    t

    Include the thread number the log entry came from.

    d

    Include the date the log entry came from.

  • HSCRIPT_NO_HISTORY

    If this variable is defined, the script applications (hython and hbatch) and script panes will not store the line history. They will use standard input directly.

  • HOUDINI_INTERRUPT_THRESH

    Timeout in seconds before the interrupt dialog appears to interrupt long operations.

  • HOUDINI_REALTIME_INTERRUPT_THRESH

    Timeout in tenths-of-a-second before the Escape key will interrupt a short operation. This avoids escape canceling near-interactive operations. Zero will allow escape to interrupt at any time. Two will prevent Escape from interrupting in the first 100 ms to 200 ms.

  • HOUDINI_TEX3D_USAGE

    Amount of memory used by 3D texture maps in VEX.

  • HOUDINI_RAT_USAGE

    Amount of memory used by RAT textures in Houdini and renders. This amount is specified in mega-bytes. For example, setting the control to 32 will limit Houdini/Mantra to use 32 Mb of RAM for RAT file texturing. This is deprecated in favor of HOUDINI_RAT_MEMORY.

  • HOUDINI_RAT_MEMORY

    The fraction of total memory used by RAT textures in Houdini and renders. This amount is specified as the percentage of memory to reserve. For example, setting this to 25 on a system with 64 GB would cap texture usage at 16 GB.

  • HOUDINI_RAT_FILES

    The maximum number of system files held open by the Houdini texture engine for rendering or other applications.

  • HOUDINI_RAT_MAX_MIP_RES

    Sets the maximum MIP-map resolution when performing texture maps using .rat files. This can be used to limit file reads for fast preview renders.

  • HOUDINI_RAT_STREAMS_PER_FILE

    Normally the Houdini texture engine allows each thread to independently access texture files. This normally improves performance (sometimes quite significantly) but uses multiple system file handles per texture file. In some scenes with extremely large numbers of separate texture files this may cause thrashing of the file cache. This variable allows you to limit the number of simultaneous system file handles that are open for each texture. If the value is 0 or less, there will be no limit on the number of streams per file.

  • HOUDINI_RAT_LOCALCACHE

    Specifies the size of the local texture disk cache in MB.

    When texture are stored on network drives, and there are more textures than will fit in memory (i.e. there’s texture cache thrashing), setting a local disk cache will cause discarded tiles to be written to a local disk file rather than having to be re-fetched over the network. This may improve performance on heavily loaded networks.

    The cache file is created in HOUDINI_TEMP_DIR (which should have enough space to store the cache file).

  • HOUDINI_RAT_OPTIMIZE_BANDWIDTH

    When textures are stored on network drives, Houdini/Mantra can attempt to optimize data transfer over the network. This control can be used enable/disable this behavior. The default behavior is to perform bandwidth optimization.

    This feature may not be supported on all operating systems.

  • HOUDINI_RAT_VERSION

    The version of .rat files to write when creating new files. Houdini 18.5 and earlier can only read v1.0 .rat files.

  • HOUDINI_PTEX_USAGE

    Amount of memory used by .ptx textures in Houdini and renders. This amount is specified in mega-bytes. For example, setting the control to 32 will limit Houdini/Mantra to use 32 MB of RAM for .ptex files.

  • HOUDINI_PTEX_FILES

    Maximum number of files held open by the ptexture library in Houdini and renders.

  • HOUDINI_PTEX_WINDING

    Controls the expected orientation of ptexture faces. Setting the value to 1 will swap the u and v coordinate from the standard Houdini format, which is typically the expected orientation from other software packages. When 1, you won’t have to swap UVs in shaders or SOPs.

  • HOUDINI_UVENLARGER_DIFFUSE_WRAP

    When set to 1, Diffuse Fill UDIM Post Process in Bake Texture will wrap diffusion across 0-1 boundaries, which can be help reduce visible seams if an edge of a polygon is touching the boundary in UV space, and texture is sampled at higher mipmap level with wrapped texture filter.

  • HOUDINI_MDISPLAY_WAIT_TIME

    Number of seconds to wait before deciding that iplay could not be started.

  • HOUDINI_OVERRIDE_XRES

    Specifies the horizontal resolution of your monitor in pixels. Houdini will not create any windows wider than the value specified here. You can use this value to force Houdini to only use a portion of your screen.

  • HOUDINI_OVERRIDE_YRES

    Specifies the vertical resolution of your monitor in pixels. Houdini will not create any windows taller than the value specified here. You can use this value to force Houdini to only use a portion of your screen.

  • HOUDINI_UISCALE

    This specifies a fixed scale factor to adjust the dots-per-inch Houdini uses for displaying UI. A value of 100 will provide the default of 85 dpi. A value of 200 will have all fonts and icons twice that size, and 50 will make them half that size. A value of -1 will cause the dpi to be calculated from the monitor’s dimensions and resolution, or by HOUDINI_OVERRIDE_*.

    By default the value is 100.

  • HOUDINI_SCRIPT_DEBUG

    If set, errors will be printed when loading dialog scripts and scripted operators.

  • HOUDINI_IMAGE_DEBUG

    If set, some image formats will be more verbose about errors encountered when saving/loading images. It’s possible that many false positives will be reported with this setting turned on, so it’s not recommended to have this enabled by default.

  • HOUDINI_TARGA_LINEAR

    Houdini defaults TARGA images to sRGB color space. However, older versions of Houdini expected TARGA format to be in linear space. Setting this variable will change the default color space for TARGA images to linear.

  • HOUDINI_OIIO_EXR

    Give the experimental OpenImageIO plugin to read/write EXR images. This plug-in is early access to work in progress, but supports multi-part EXR images. It currently does not support deep images. Even with this variable set, the Houdini classic EXR plugin will be used to read/write deep images. Values are: 0

    Use the legacy OpenEXR driver.

    1

    Use the modern multi-part OpenEXR driver.

  • HOUDINI_OIIO_DDS

    Use the DDS loader built into OpenImageIO for loading DDS files when non-zero. By default this is disabled on Windows to use the built-in DirectXTex loader. On other platforms, this is enabled by default but the OpenImageIO plugin only has 8 bit support and no export support. This can be disabled on non-Windows operating systems to allow an external HDK plugin to load DDS files instead.

  • HOUDINI_ENABLE_EXR_TEXTURE

    When enabled (default on) this allows Houdini to access EXR files directly for texture evaluation. This process falls back to use OpenImageIO to do texture evaluation. Disabling this will cause EXR files to be converted internally to RAT files for more efficient texture access. There is a cost (time and memory) for RAT file conversion.

    Please note you can use OPENIMAGEIO_IMAGECACHE_OPTIONS to configure OpenImageIO texture cache options. For example:

    OPENIMAGEIO_IMAGECACHE_OPTIONS=max_memory_MB=512.0,max_open_files=50
    
  • HOUDINI_TEXTURE_COMPRESS

    When Houdini converts non-RAT texture maps to RAT files internally, this tells Houdini whether to compress the texture images or whether to leave the images uncompressed. There’s a run-time cost to compression, but this can result in memory savings.

  • HOUDINI_COLOR_MANAGER

    The color manager used by Houdini. A value of 0 will use Houdini’s built-in color management. A value of 1 will use OpenColorIO for color management. This is used in several places throughout Houdini including the VEX texture function (when reading sRGB images) and the imaketx utility.

  • HOUDINI_SCRIPT_LICENSE

    This variable is primarily used to determine which license should be used when using the hou module from a standard python shell. The license will determine which features are available in the hou module. It is recommended that you set this variable with os.environ, but you must do so before importing the hou module.

    Note that hython and hbatch will also use this variable. The hbatch and hython options will override this variable, though.

    Possible values of the variable are: "hbatch"

    Access to all of Houdini. Checks out for a Houdini Batch license, and if one could not be found, checks out an Houdini Master license.

    "hbatch -R"

    Same as "hbatch", but only checks for a Houdini Batch license. See the -R option in hbatch for more information.

    "hscriptexper"

    Access to all of Houdini, including the experimental parts. It uses a Houdini Master Experimental license.

    "hescape"

    Access to all the nodes that Houdini Escape has access to. uses a Houdini Escape license.

    "hescape -p"

    Access to all the nodes that Houdini Escape has access to, plus the third party rendering nodes. Uses a Houdini Escape license and a Plus license.

    "pdg"

    Access to only the TOP nodes. It uses a PDG license if available. Automatically loads the pdg python module.

    This option has been deprecated in favor of the new licensing system environment variables. This option will be removed in a later version.

  • HOUDINI_RMAN_CURVE_STEP

    Obsolete control. Overrides the step size when writing RiCurve primitives for RIB. This is obsolete and may be removed in future versions. It has been replaced by the ri_curvestep detail integer attribute.

  • HOUDINI_DISABLE_ALEMBIC_INDEXED_ARRAYS

    Disable saving string attributes as Alembic indexed arrays. By default, Houdini will save strings as indexed attributes in cases where it makes sense. This option will disable this feature.

  • HOUDINI_ALEMBIC_OGAWA_STREAMS

    When doing threaded processing on Alembic Archives, use this many streams. The default of zero lets Houdini pick the optimal number, and 1 disables threaded processing of Alembic archives. Higher values enable threading but cause more open files, so it should generally not be set higher than the processor count.

  • MANTRA_BIAS_NORMAL

    Specifies that biasing for ray tracing operations in mantra should operate along the normal vector rather than along the outgoing ray.

  • HOUDINI_UI_QUEUE_SIZE

    Specifies the size of the UI event queue. Increasing this can help prevent queue overflows.

  • FPS

    This variable is used by Houdini applications to set the default frames per second. It is also automatically set by the OpenGL output driver before launching mplay.

  • HOUDINI_PERFORMANCE_SIZE

    Specifies the number of lines that the performance monitor keeps.

  • HOUDINI_ABEKAS_PAL_XRES

    Overrides the default resolution of the abekas image device.

  • HOUDINI_ABEKAS_PAL_YRES

    Overrides the default resolution of the abekas image device.

  • HOUDINI_GAUSS_EXP

    Specifies the exponent for the Gaussian filter kernel. This affects any Gaussian filtering (image scaling, rendering, etc.)

  • HOUDINI_MITCHELL_B

    Specified the B parameter of the Mitchell filter kernel. This affects any Mitchell filtering (image scaling, rendering, etc.)

  • HOUDINI_MITCHELL_C

    Specified the C parameter of the Mitchell filter kernel. This affects any Mitchell filtering (image scaling, rendering, etc.)

  • HOUDINI_CHOP_OLDNOISE

    The noise CHOP in Houdini5 and greater has a new method for computing random values. This produces different results than Houdini4, but is more consistent on different hardware platforms. If this variable is set, the noise CHOP in Houdini5 will generate same values as Houdini4.

  • HOUDINI_FULL_SHADERSTRING

    This variable determines whether shaders are output to mantra or prman with values set for all their parameters. If set to 0, then only parameters whose values are not at default are sent. This results in smaller IFD or RIB files. However, if the shader is changed without regenerating its corresponding DS files, then the output might be wrong.

  • HOUDINI_TYPED_SHADERSTRING

    This variable determines whether the shader string output to prman contains only the parameters that are tagged with a type. If the variable is not set, then all parameters are included whether or not they have a script type information. Otherwise, if it is set, then shader string will contain only parameters that have an explicit script_ritype tag set.

  • HOUDINI_RSL_HASHING

    To prevent name collisions on SLO files, Houdini will normally do hashing on the SLO shader name. Mangling/hashing the shader name will help in cases where there are multiple shaders with the same name, but in different sub-networks. In addition, hashing will help when the same .hip file is being used to generate shader files on a shared network drive (preventing overwriting by separate Houdini processes).

    The value of this variable has different levels of name mangling.

    0

    Disable all mangling of names

    1

    Hash shader name with the operator path name and the Houdini process id.

    2

    Place shader in a sub-directory based on the HIP file name

    3

    Place each shader in a sub-directory based on the HIP file name and the operator’s full path.

  • HOUDINI_VOP_DEFINITIONS_PATH

    Defines the directory search path where Houdini looks for connector type definitions (such as new struct definitions). The default is to look in the vop subdirectory of HOUDINI_PATH directories.

  • HOUDINI_NO_DEFAULT_SHELF_TOOLS

    This variable, when set to non-zero, disables the automatic generation of the shelf tools for Houdini Digital Assets that don’t define any shelf tools (or explicitly removed all the tools from its tool section). Otherwise, when a digital asset is loaded, Houdini will generate a default tool that will allow the user to instantiate it from the shelf or the TAB menu.

  • HOUDINI_SHELF_EXCLUDE_DIRS_PATTERN

    If set, this specifies a regular expression that is used to exclude matching subdirectories when searching for shelf files.

  • HOUDINI_CHOP_LINEWIDTH

    This variable controls the line thickness in the CHOP viewer.

  • HOUDINI_CHOP_UNITS

    This sets the default parameter for the Units parameter of CHOPs. Valid values include: frames, samples, seconds.

  • HOUDINI_CHOP_IMAGE

    This variable can be set to point to an image file which is displayed when the CHOP viewer is disabled.

  • HOUDINI_COLOR_PICKER_GAMMA

    This variable specifies the gamma exponent for the device specific color correction of the color picker gadgets and color parameters.

  • HOUDINI_CINEON_WHITE_POINT

    Defines the white point for reading and writing Cineon files. This value is not used if a LUT file is used. It defaults to 685.

  • HOUDINI_CINEON_FILM_GAMMA

    Defines the film gamma for reading and writing Cineon files. This value is not used if a LUT file is used. It defaults to 0.6.

  • HOUDINI_CINEON_BLACK_POINT

    Defines the Cineon black point for reading and writing Cineon files. This value is not used if a LUT file is used. It defaults to 95.

  • HOUDINI_CINEON_FULL_RANGE

    If set, the generated LUT from the CINEON_WHITE_POINT and CINEON_FILM_GAMMA is not clipped above the white point; the full range of the Cineon data is preserved. Only used by the Houdini 4.0 Compositor.

  • HOUDINI_CINEON_RENDER_LUT

    Defines the default render LUT filename for reading and writing Cineon files.

  • HOUDINI_CINEON_PREVIEW_LUT

    Defines the default preview LUT filename for reading and writing Cineon files. Only used by the Houdini 4.0 Compositor.

  • HOUDINI_IMAGE_DISPLAY_GAMMA

    Defines the default gamma for Houdini (found in Edit > Color Settings), for displaying images in the composite view, render view, 3D viewport and MPlay.

  • HOUDINI_IMAGE_DISPLAY_LUT

    Defines the default display LUT for Houdini (found in Edit > Color Settings), for displaying images in the composite view, render view, 3D viewport and MPlay.

  • HOUDINI_OCIO_SRGB_FILE_COLORSPACE

    Defines the source colorspace for an sRGB file. sRGB is used for various purposes in Houdini, including display of images, viewport rendering, etc. You can find more information about OCIO, and colorspaces in particular, on the Color management in Houdini page.

  • HOUDINI_OCIO_FILENAME_COLORSPACE

    Enables detection of the OpenColorIO colorspace of an image file by looking at the filename itself. If set to 1, detection is enabled. The longest, rightmost string that matches a colorspace will be taken as the colorspace. If none are found, use Houdini’s heuristics for determining the colorspace (JPG is sRGB, EXR is linear, etc). If set to 2, detection occurs in the same way but when no colorspace is found, the “default” role defined by the OpenColorIO config.ocio file is used (OpenColorIO strict parsing). When set to 0, detection is not performed and Houdini’s native heuristics are used to determine the colorspace. When using OpenColorIO 2.0 and above, this uses the file_rules defined in the OpenColorIO config file.

    When set to 3, color space detection will be done with a more strict detection algorithm. In this mode, color spaces embedded in filenames must be delimited by a period (.), underscore (_) , hyphen (-) or space. Using OpenColorIO parsing, StrawHat.exr would be interpreted as being in raw colorspace. With strict parsing, this is not the case.

    When set to 4 (default), this uses the OpenColorIO file_rule parsing, but will return an empty string rather than the “default” color space. This uses an efficient evaluator for the file_rules, but may not be 100% compatible with OCIO.

    Setting to 5 will use the OpenColorIO library file_rule parsing with the same behavior as 4 (that is, return an empty string rather than the “default” color space). Rather than the efficient evaluator used by 4, this uses the native OpenColorIO library which may have performance implications in some cases.

    This only has an effect if a valid OCIO environment variable is set.

    You can find more information about OCIO, and colorspaces in particular, on the Color management in Houdini page.

  • HOUDINI_IMAGE_DISPLAY_OVERRIDE

    If set to 1, the HOUDINI_IMAGE_DISPLAY_GAMMA and HOUDINI_IMAGE_DISPLAY_LUT will always override the values stored in color.pref. When 0, these variables will only take effect if colors.pref is not present. Setting this to 2 will only allow gamma to override, and 3 only the LUT.

  • HOUDINI_IMAGE_INSPECT_LUT

    Defines the default inspect LUT filename for inspecting images in the compositor’s viewer and MPlay.

  • HOUDINI_AUTOCONVERT_IMAGE_FILES

    By default Houdini linearizes any non-linear image formats that it loads, and converts them from linear to the image format’s native colorspace when writing image files. This can be globally disabled by setting this variable to 0, though local options can still override it (icp -g auto, the Linearize Non-Linear Images in the File COP). This sets the initial default for those parameters. This should only be used if a LUT pipeline is handling the linearization of images. This should generally be used in conjunction with a HOUDINI_IMAGE_DISPLAY_GAMMA setting of 1.0.

  • HOUDINI_LOD

    This is an Level of Detail number, such as 0.01 or 1.0. It becomes the default LOD for new windows. Higher LODs will result in more accurate drawing of curves and surfaces, however at a corresponding cost in display speed. By default, it is set to 1.0. If you find yourself having to constantly change the View Parameter:Viewer:LOD setting, you might save some work by just making your default a better value.

  • HOUDINI_WF_GAMMA

    Specifies the gamma value written out to Wavefront RLA files.

  • EDITOR

    Houdini will use this variable to determine which external graphical editor to invoke when editing text. The editor should run in the foreground.

    If the VISUAL environment variable is set, then it is used instead of EDITOR and started as a graphical process. In other words, the VISUAL environment variable will override this and thus have no effect if VISUAL is also set. If both the VISUAL and EDITOR variables are not set, then a default editor (Windows Notepad, Mac OS X Text Edit, Linux GEdit) is used.

    This environment variable may be used by applications other than Houdini.

  • VISUAL

    Houdini will use this variable to determine which external editor to invoke when editing text.

    If this environment variable is not set, then the EDITOR environment variable is used. See the help for the EDITOR environment variable to see what are the defaults if both are not set.

    This environment variable may be used by applications other than Houdini.

  • HFS

    The path where Houdini is installed. Houdini reads the configuration information from $HFS/houdini.

  • HH

    The path to Houdini supporting scripts and files inside $HFS. Usually $HFS/houdini

  • HHP

    The path to Houdini’s python libraries. This will differ depending on the version of python that Houdini is built with. For example $HH/python3.7libs.

  • SHELL

    When Houdini starts external applications, it uses the SHELL variable to determine how to start them. This may be used by applications other than Houdini.

  • HOME

    This variable determines your “home” directory. This may be used by applications other than Houdini. Houdini mostly uses files in $HOME/houdiniX.Y, where X.Y is the current version number (ie: $HOME/houdini6.0 or $HOME/houdini6.1).

  • HSITE

    The HSITE variable is a path to the site-specific Houdini configuration information. This allows a site to have a common set of defaults and files. It is, by default, in the HOUDINI_PATH between HOME and HFS. To change global configuration information, you should use this rather than editing the contents of $HFS/houdini.

    Like HOME, Houdini uses $HSITE/houdiniX.Y, where X.Y is the current version number (ie: $HSITE/houdini16.0 or $HSITE/houdini16.1)

  • JOB

  • HOUDINI_TEMP_DIR

    Specifies a directory where Houdini will generate temporary files.

  • HOUDINI_UNDO_DIR

    Specifies a directory where Houdini will store undo information. If not specified, the temporary directory will be used.

  • HOUDINI_CONDENSE_HIP

    If this variable is set Houdini will attempt to make paths entered “friendly” by replacing portions of filename paths with $HIP if it’s appropriate. This behavior is off by default.

  • HOUDINI_UNBUFFERED_STDINOUT

    If this variable is set, Houdini will not buffer the console’s standard input and output. When output is unbuffered, any output you write to the console (from C++, Python, etc.) will appear immediately, without you having to write a newline character or flush the output. This variable is similar to Python’s PYTHONUNBUFFERED variable.

  • HOUDINI_MESSAGE_COMMAND

    An external program which Houdini uses to display graphical messages.

  • HOUDINI_CONFIRM_COMMAND

    An external program which Houdini uses to display confirmation boxes.

  • HOUDINI_WEB_BROWSER_COMMAND

    An external program which Houdini uses to display web pages. For example "/usr/bin/firefox" on Linux or "c:/Progra~1/Mozill~2/firefox.exe" on Windows (though "c:\\\Progra~1\\\Mozill~2\\\firefox.exe" is also valid).

  • HOUDINI_TERMINAL_COMMAND

    An external program which Houdini uses as a terminal. For example the default "xterm" or "gnome-terminal".

  • HOUDINI_CONDENSE_BLOCKLIST

    A space separated list of environment variables to not condense paths to. Simple pattern matching with * and ? is possible. HIP, JOB, and HOME are common condensation targets. This often happens internally to HIP files in locations such as OPlibraries.

  • HOUDINI_ERRORLOG_FILENAME

    If set to a valid file name, Houdini will log all errors of severity above HOUDINI_ERRORLOG_LEVEL to this file.

  • HOUDINI_ERRORLOG_LEVEL

    The minimum error level that Houdini will write to the error log file specified by HOUDINI_ERRORLOG_FILENAME. Valid values are integers between 0 (all errors will be logged) and 6 (nothing will be logged) inclusive. Default value is 3. Error levels are defined as follows. 1

    Message

    2

    Prompt

    3

    Warning

    4

    Abort operation

    5

    Fatal error

  • HOUDINI_DEFAULT_TEXTURE_COLOR

    Specifies the default color to use when texture maps cannot be found while rendering. This can be specified as a single string containing four floating point numbers representing the red, green, blue and alpha components of the default color. For example:

    setenv HOUDINI_DEFAULT_TEXTURE_COLOR "0 0 0 0"

    to set it to zero black.

  • HOUDINI_DESKTOP_DIR

    This variable specifies the file path to the folder or the directory that is considered the user’s system desktop directory. This variable is used in the file chooser dialog to jump to the user’s desktop.

  • HOUDINI_VEX_DEFAULT_AMBIENT

    The default VEX ambient light shader. If no shader can be found for an ambient light source, this shader will be applied at render time.

  • HOUDINI_VEX_DEFAULT_LIGHT

    The default VEX light shader. If no shader can be found for a light source, this shader will be applied at render time.

  • HOUDINI_VEX_DEFAULT_LIGHTSURFACE

    The default VEX surface shader for light sources. The emission (Ce) of this shader is used to specify the illumination from the light source. If no shader can be found for a light source, this shader will be applied at render time.

  • HOUDINI_VEX_DEFAULT_MATTE

    The default VEX matte surface shader. This shader is used at render time to provide a background surface if there is fog applied to a scene.

  • HOUDINI_VEX_DEFAULT_SHADOW

    The default VEX shadow shader. If a light source is casting shadows, but no shadow shader is found, this shader is applied at render time.

  • HOUDINI_VEX_DEFAULT_SURFACE

    The default VEX surface shader. If no surface shader can be found, this shader will be applied at render time.

  • HOUDINI_VEX_DEFAULT_VOLUME

    The default VEX surface shader applied to volumes. If no surface shader can be found for an object, this shader will be applied at render time.

  • HOUDINI_OGL_DEBUG

    Starts Houdini with a debug GL profile, if supported by the OpenGL driver. This can be used to help debug GL render hooks in the HDK. The value specifies the level, which includes reporting from all levels below it. This information is provided by the OpenGL driver and requires the GL_ARB_debug_output extension. Messages are written to the standard error stream and prefixed with HOUDINI_OGL_DEBUG.

    0

    No debugging (default)

    1

    High priority messages only

    2

    Medium and high priorities

    3

    Low, medium and high priorities

    4

    All messages (notifications, low, medium and high priorities)

  • HOUDINI_OGL_DEBUG_EXCLUDE

    Excludes certain messages types from debug output when HOUDINI_OGL_DEBUG is enabled. Multiple message types and sources can be excluded, specified by whitespace-separated strings.

    error

    OpenGL Errors

    performance

    Issues affecting performance

    portability

    Legal uses of OpenGL on this platform that may not work on others

    undefined

    Use of OpenGL whose behavior is not defined by the OpenGL specification

    deprecated

    Use of OpenGL features that are deprecated (legacy)

    other

    Other miscellaneous messages

    annotation

    Houdini debug annotations

    group

    Houdini main rendering group annotations

    opengl

    Message originated from the OpenGL driver

    compiler

    Message originated from the GLSL compiler, or other compiler

    window

    Message originated from the Window Manager (WGL, GLX, AGL)

    houdini

    Message originated from Houdini

    thirdparty

    Message originated from outside OpenGL, Houdini or Window Manager

  • HOUDINI_OGL_PICKBUFFER_PATH

    For debugging viewport picking. Specifies a directory where pick buffers should be written out as image files for later inspection. Use the HOUDINI_OGL_FILECOUNT variable to control the number of files to write before looping around to overwrite existing files.

  • HOUDINI_OGL_SNAPBUFFER_PATH

    For debugging viewport snapping. Specifies a directory where snap buffers should be written out as image files for later inspection. Use the HOUDINI_OGL_FILECOUNT variable to control the number of files to write before looping around to overwrite existing files.

  • HOUDINI_OGL_BEAUTY_PATH

    For debugging viewport drawing. Specifies a directory where geometry draw should be written out as image files for later inspection. Use the HOUDINI_OGL_FILECOUNT variable to control the number of files to write before looping around to overwrite existing files.

  • HOUDINI_OGL_VIEWPORT_PATH

    For debugging viewport drawing. Specifies a directory where final viewport buffers should be written out as image files for later inspection. Use the HOUDINI_OGL_FILECOUNT variable to control the number of files to write before looping around to overwrite existing files.

  • HOUDINI_OGL_FILECOUNT

    Controls the number of images to keep when writing out OpenGL buffers with the HOUDINI_OGL_SNAPBUFFER_PATH, HOUDINI_OGL_PICKBUFFER_PATH and HOUDINI_OGL_BEAUTY_PATH values.

  • HOUDINI_OGL_DITHER_TEXTURE

    Customize the random texture used by the viewport for dithering as a texture path. You can specify a blue noise texture. The texture must have a resolution of 256 x 256 and have values from 0.0 to 1.0. When not set, a white noise texture is used instead. This affects the 3D viewport and the 2D image viewers.

  • HOUDINI_OGL_DITHER_PDF_TRI

    Enables a remapping step from a uniform probability function to a triangular distribution when performing viewport dithering. This affects the 3D viewport and the 2D image viewers. This is disabled by default.

  • HOUDINI_COPY_SUFFIX

    When copy/pasting, this variable can be used to create user-specific temporary files.

  • HOUDINI_OPNAMESPACE_HIERARCHY

    Defines the operator type namespace hierarchy as a space-separated list of namespace names and/or operator type names, sorted according to the descending preference order. This hierarchy is used to resolve any ambiguous operator type names used in scripts (e.g., in opadd command) A few examples:

    Given hierarchy "userB userA" and available operators userA::hda and userB::hda, the command "opadd hda" will choose userB::hda.

    Given hierarchy "Sop/hda::2.0" and available operators hda::2.0 and hda::3.0, the command "opadd hda" will choose hda::2.0.

    Given hierarchy "Sop/hda::" and available operators hda and hda::1.0, the command "opadd hda" will choose hda.

  • HOUDINI_RMAN_CURVE_BASIS

    Obsolete control. Specify the curve interpolation when generating RiCurve primitives in a RIB stream. This should be one of "linear" or "cubic". This is obsolete and may be removed from future versions. It has been replaced by the ri_curveinterpolation detail string attribute.

  • HOUDINI_COP_DISK_DEFAULTNAME

    Obsolete control

  • HOUDINI_COP_ENSURECOLORPLANES

    Forces each COP2 to generate C and A color planes. Provides backwards compatibility with old versions of Houdini.

  • HOUDINI_COP_MAXRES

    Override the maximum compositing resolution (10000 x 10000 by default). This integer is use as both the max width and height of an image.

  • HOUDINI_RI_SHADERPATH

    When the RSL shader search path is not specified on the RIB output driver in the Shader Path parameter (or if the parameter does not exist), then this environment variable is checked. If this variable exists, then its value will be output to the RIB stream. If the variable doesn’t exist, a specially constructed search path will be output to the RIB file. That specially constructed path consists of the current directory, followed by the list of ri_shader sub-directories in HOUDINI_PATH, followed by the RenderMan’s default shader search path.

  • HOUDINI_RI_RIXPLUGINPATH

    When the RIS shader search path is not specified on the RIB output driver in the Rix Plugin Path parameter (or if the parameter does not exist), then this environment variable is checked. If this variable exists, then its value will be output to the RIB stream. If the variable doesn’t exist, then no RIS plugin path will be output to the RIB file.

  • HOUDINI_FILE_VIEWER

    Specify an external application to view files.

  • HOUDINI_CHECK_XFORM

    When generating scripts for renderers, if this variable is set, the transforms on objects will be tested to see if they are singular (i.e. whether there are zero scales). If the transform is singular, the object will not be output.

    The value of this variable is the threshold at which the transform is considered zero. Thus, the variable should be set to some very small floating point number.

  • HOUDINI_STPATH

    Specify a path to search for the source to a shader when editing shader code from pop-up dialog scripts.

  • HOUDINI_STEDIT

    Specify an external application to edit shaders with.

  • HOUDINI_DOUBLEBUFFER

    This variable can be set to either ON or OFF. It will force Houdini to run in either single or double buffer mode.

  • HOUDINI_WORKSHEET_BOXPICK

    This environment variable is used to override using the left mouse button for box picking in the network worksheet. Can be set to either middle or right.

  • HOUDINI_DEFOPTYPEPREFIX

    When you convert a subnet into a new operator type, this prefix, if present, will be used for guessing what the basename of the new operator should be. If not present, the username is used.

    For example, setting this to "foobar_" will ensure all operators created will have their basename type prefixed by foobar_. This can be used to ensure conflicts don’t occur with other projects operators.

  • HOUDINI_VEX_COMPILER

    External application used for compiling VEX code. Usually vcc.

  • HOUDINI_ABEKAS_LOGNAME

    Specify the user name for logging into an Abekas frame recorder.

  • HOUDINI_ABEKAS_LOGPASSWD

    Specify the password for logging into an Abekas frame recorder.

  • HOUDINI_MD_COMMAND

    Specify the external application used by the md image device to read images from stdin and display them in a persistent frame buffer device (i.e. MPlay).

  • HOUDINI_MD_COMMAND_FLIP

    Specify the external application used by the md image device to read images from stdin and display them upside down in a persistent frame buffer device (i.e.

  • HOUDINI_MPLAY_LOCKPATH

    Specify a directory to create the MPlay lockfiles. These files will normally be created in the user’s HOME directory. The value of this variable should point to a directory where lockfiles can be created (i.e. /tmp or c:/temp).

  • HOUDINI_EXTERNAL_HELP_BROWSER

    When this variable is defined, Houdini will launch a default web browser to display the help documents externally. This applies only to the Houdini’s floating help browser pane; the embedded panes will still show the Houdini’s own help browser. This environment variable is useful to display HTML content which cannot be normally displayed in the standard help browser (such as https).

  • HOUDINI_DISABLE_BACKGROUND_HELP_INDEXING

    Set this variable to 1 to prevent Houdini from indexing help files in the background. If this variable is not set or is set to any value other than 1 then Houdini spawns a separate thread on startup to index help files. The thread indexes all help files once at startup and then indexes incremental changes throughout the application session.

    This variable must be set before Houdini is launched for it to take effect.

    Note

    Background help indexing occurs only in graphical Houdini.

  • HOUDINI_IP_COMMAND

    Specify the external application used by the ip image device to read images from stdin and display them in a viewer (i.e. iplay).

  • HOUDINI_IP_COMMAND_FLIP

    Specify the external application used by the ip image device to read images from stdin and display them upside down in a viewer (i.e. iplay).

  • USER

    Internally, Houdini will to override this variable with information from the login session. This variable represents the name of the user logged in.

  • HOUDINI_OS

    The OS that Houdini believes it’s running on. Possible values of this variable are currently defined as "Windows", "Linux", or "MacOS".

  • HOUDINI_UI_RESOURCES

    An application variable which specifies the name of the resource file used for Houdini. It is rare that you would need to change this variable, and incorrectly setting it will cause the graphical Houdini applications to fail on startup.

  • HOUDINI_PATH

    The path of directories where Houdini looks for configuration files.

  • HOUDINI_OTL_PATH

    This path is not used directly by Houdini. It is used to provide default values for the HOUDINI_OPLIBRARIES_PATH and HOUDINI_OTLSCAN_PATH values in a way that is backward compatible (since HOUDINI_OTL_PATH used to mean what HOUDINI_OPLIBRARIES_PATH now means).

  • HOUDINI_OTLSCAN_PATH

    This path specifies the directories Houdini will search for OTL files. This value is only used if the Operator Type Manager is configured not to use OPlibraries files to find OTL files. The default for this value is the HOUDINI_OTL_PATH with /otls appended to each directory in that path.

  • HOUDINI_OPLIBRARIES_PATH

    The path of directories where Houdini looks for OPlibraries files for loading OTL files at startup. OPlibraries files are only used if the Operator Type Manager is configured to use them. Otherwise OTL files are scanned for directly. This path by default is equal to the HOUDINI_OTL_PATH.

  • HOUDINI_SCRIPT_PATH

    The path of directories where Houdini searches for scripts. This includes .cmd files for hscript, .tcl and .tk files for the tcl and tk commands, and command scripts for the Alfred Output Driver.

  • HOUDINI_SOHO_PATH

    The path of directories used by soho.

  • HOUDINI_CLIP_PATH

    The path of directories where Houdini looks for .clip and .bclip channel files

  • HOUDINI_CUSTOM_PATH

    The path of directories where Houdini looks for custom panel information.

  • HOUDINI_DESK_PATH

    The path of directories where Houdini looks for desktops.

  • HOUDINI_DSO_PATH

    The search path for loading custom plug-ins (Dynamic Shared Objects or Dynamic Link Libraries).

  • HOUDINI_IMAGE_DSO_PATH

    The search path for loading custom image format plugins for reading and writing images of that format (.so, .dll).

  • HOUDINI_AUDIO_DSO_PATH

    The search path for loading custom audio format plugins for reading and writing audio or channel files (.so, .dll).

  • HOUDINI_MOCAPSTREAM_DSO_PATH

    The search path for loading custom mocap stream devices into the MocapStream SOP. (.so, .dll)

  • HOUDINI_MV_DSO_PATH

    The search path for loading custom video readers and writers (.so, .dll)

  • HOUDINI_PDG_DSO_PATH

    The search path for loading custom PDG node, work item, and scheduler definitions (.so, .dll).

  • HOUDINI_PDGD_DSO_PATH

    The search path for loading custom PDG data interface and server definitions (.so, .dll).

  • HOUDINI_OPUI_DSO_PATH

    The search path for loading custom network editor plugins, such as adding icon or text badges to nodes.

  • HOUDINI_USD_DSO_PATH

    The search path for loading USD plugins. These paths are passed to the USD library to perform its own plugin loading.

  • HOUDINI_VEX_DSO_PATH

    The search path for loading custom VEX functions.

  • MANTRA_DSO_PATH

    The search path for loading mantra specific plugins (procedurals)

  • KARMA_RNG_MODE

    Let’s you turn off blue noise (0) and switch to the old method. However, we recommend keeping blue noise turned on and only change it if there’s a good reason. RNG stands for “random number generator”.

    Blue noise works better with denoisers, because it has randomization only in high frequencies, while some other noise have randomization in all frequencies. When blue noise is blurred, the high frequency noise is removed and leaves the lower frequencies of the image intact.

  • KARMA_CONDUCTOR_FRESNEL_FIX

    Fixes bad fresnel in MaterialX Conductor BSDF which would produce overly bright results at grazing angles, particularly at high roughness. This affects both Karma CPU and XPU. (default 1)

  • KARMA_DCM_COMPATIBILITY

    Set to 1 to enable legacy deep camera map post processing to match output in Houdini 20.0 and earlier. Note that the legacy codepath may be considerably slower.

  • KARMA_DICING_LEGACY

    Legacy mode for tessellation on subd and displacement mesh. Intended to be used only for compatibility to match old renders. Ideally should be set to 0 for improved appearance (smoother transitions between levels of detail) and memory usage.

  • KARMA_VARYING_ARRAY_PRIMVARS

    Some primvars can be defined with varying length arrays per element. Examples of this are blend-weights for skeletal deformation. Normally, these types of primvars are not practical for shading. If there’s some reason to make these type of primvars available for shading, this can be enable.

  • KARMA_DSO_PATH

    The search path for loading karma specific plug-ins (procedurals)

  • KARMA_POLY_DERIV_FIX

    Fixes discontinuity artifacts with high-frequency bump or normal maps on polygons due to tangent discontinuities. Also fixes overfiltered/soft appearance with non-RAT textures. (default 1)

  • KARMA_PROTOTYPE_DATA_SHARING

    When referencing a point instancer whose prototype mesh is set to be instanceable multiple times, enabling this may help reduce memory usage during scene ingestion. (default 0).

  • KARMA_XPU_MAX_SHADER_TEXTURE_RES

    The resolution limit for shading textures used by Karma XPU. A value of 0 means no limit. (default 0).

  • KARMA_XPU_MAX_LIGHTING_TEXTURE_RES

    The resolution limit for lighting textures used by Karma XPU. A value of 0 means no limit. (default 8192).

  • KARMA_XPU_MAX_UDIM_U

    The maximum UDIM index in the U axis (default 10).

  • KARMA_XPU_MAX_UDIM_V

    The maximum UDIM index in the V axis (default 10).

  • KARMA_XPU_MAX_UNIFORM_VOLUME_SPANS

    The maximum number of uniform volume entry and exit points along the ray (default 32).

  • KARMA_XPU_NUM_PER_DEVICE_BLENDING_THREADS

    The number of blending threads allocated for each device (default 1).

  • KARMA_XPU_THREAD_COMPILE

    Enable threaded shader compiling for XPU.

  • KARMA_XPU_DEVICES

    Pattern to select devices which are enabled for Karma XPU rendering. Karma XPU enumerates all devices starting from 0. This information is available in the render logs when rendering with verbose level 5 or greater.

    This variable uses standard Houdini pattern matching to select which devices match.

    Current pattern tokens are:

    • embree: The embree device

    • optix: All Optix devices

    • optix<N>: The Nth Optix device (e.g. optix0, optix1, optix2, etc.)

    • device<N>: The Nth ordered device (see render log with verbose level 5)

    Example patterns:

    • *: Render using all available devices

    • *,^optix3: Render on all available devices except optix3

    • embree: Render using only the embree device

    • optix* (or optix): Render using every available optix device

    • embree,optix2,optix4: Render using the embree, optix2 and optix4 devices

    • *,^device3: Render using all devices except device3

  • KARMA_XPU_DISABLE_EMBREE_DEVICE

    Disable the Embree device when rendering with Karma XPU.

  • KARMA_XPU_DISABLE_OPTIX_DEVICE

    Disable the Optix device when rendering with Karma XPU.

  • KARMA_XPU_DISABLE_DEVICE_0

    Disable device 0 when rendering with Karma XPU.

  • KARMA_XPU_DISABLE_DEVICE_1

    Disable device 1 when rendering with Karma XPU.

  • KARMA_XPU_DISABLE_DEVICE_2

    Disable device 2 when rendering with Karma XPU.

  • KARMA_XPU_DISABLE_DEVICE_3

    Disable device 3 when rendering with Karma XPU.

  • KARMA_XPU_DISABLE_DEVICE_4

    Disable device 4 when rendering with Karma XPU.

  • KARMA_XPU_DISABLE_MIPMAPS

    Disable texture mipmapping with Karma XPU.

  • KARMA_XPU_OPTIX_CURVE_OPT_LEVEL

    Optimization level for Optix curves in KarmaXPU. Higher is faster, but will also consume more memory. 0

    auto (default)

    1

    Low

    2

    Medium

    3

    High

  • KARMA_XPU_OPTIX_FORCE_CONSTANT_FOLDING

    This will force XPU to hardcode parameter values directly into shader code. It can improve performance of rendering by ~20%, but will mean shader compilation will be more frequent and take longer. 0

    Off (default)

    1

    On

  • KARMA_XPU_OPTIX_HQ_LINEAR_FILTERING

    Force Karma XPU Optix device to do high-quality linear filtering (which will come at a performance cost) 0

    Off (default)

    1

    On

  • KARMA_XPU_OPTIX_SPARSE_TEXTURES

    Karma XPU Optix device should use demand-loaded sparse textures. Enabled will consume much less GPU memory. Disabled will consume more GPU memory, but performance should improve. 0

    Off (default)

    1

    On

  • KARMA_XPU_OPTIX_FORCE_GAS_TRACE

    This sets an obscure feature within OptiX which can avoid an NVidia driver bug (which appeared in ~2023 drivers), at the expense of some minor speed loss. 0 = off (default), 1 = on

  • KARMA_XPU_OPTIX_VALIDATION_MODE

    This sets a debugging feature within OptiX which can avoid an NVidia driver bug (which appeared in ~2023 drivers), at the expense of some minor speed loss. 0 = off (default), 1 = on

  • KARMA_XPU_OPTIX_DC_STACK_BOOST

    This boosts stack allocation for the “direct callable” part of OptiX, which can avoid an NVidia driver issue (which appeared in ~2023 drivers), at the expense of some minor speed loss. The deault is 150, but a range of 0 to 500 should suffice. The higher the value the slower XPU will become, so finding the lowest value which avoids the crash is ideal (at least to a multiple of 32)

  • HOUDINI_ENABLE_OLD_PRESETS

    If set, the preset menu in the parameter pane toolbar will show the old-style presets options for loading and saving the presets to a file.

  • HOUDINI_USE_OTL_AS_DEFAULT_HDA_EXT

    If set, Houdini will use the older .otl as the default extension for digital assets instead of the newer .hda extension.

    This can be useful when using a legacy asset management system that does not yet understand the new .hda extension.

  • HOUDINI_GEOMETRY_PATH

    The search path for geometry files.

  • HOUDINI_GEOMETRY_CACHESIZE

    The size for caching of tessellated geometry in Houdini. Some uses for tessellated geometry include viewport rendering, and ray intersections.

  • HOUDINI_MACRO_PATH

    The search path for toolbar macro files.

  • HOUDINI_MENU_PATH

    The search path for XML menu files, such as the main menu, the node RMB menu, parameter menu, and shelf menu.

    Note, the paths are scanned in reverse order, i.e., the files from directories further in the path are loaded first, and files from directories earlier in the path are loaded later. This ensures that the default menus are loaded first, which allows custom files to modify their configuration.

  • HOUDINI_PDG_PATH

    The search path for PDG templates, interface files and custom Python node definitions.

  • HOUDINI_PDGD_PATH

    The search path for custom PDGD visualizer and backend types.

  • HOUDINI_PYTHON_PANEL_PATH

    The search path for factory and custom Python panel files. The panel files are searched for and loaded when Houdini starts. They can define interfaces that appear in Python Panels or set the configuration of the Python Panel interfaces menu.

  • HOUDINI_TEXTURE_PATH

    The search path for loading images. This includes RAT files and other 2D formats as well as I3D 3D texture files.

  • HOUDINI_TEXTURE_DISK_CACHE

    Some image formats will have better performance when used as texture maps when rendering. The imaketx program can be used to create these high-performance texture files. This variable controls how non-ideal texture maps should be used for texturing, automatically running imaketex on these images to create high-performance texture files. This conversion is done once, resulting an overall performance increase.

    • Unset or native: will use the raw texture map with no conversion

    • local will create a high performance texture file in the same directory as the source texture (if possible).

    • temp will use a local disk cache to store the high performance texture files. This cache can be controlled using the htexcache command line utility.

    • all will first try to create a local texture file and if that fails, it will fall back to the “temp” disk cache.

    • dir=<path> specifies a directory for the texture cache. All converted textures will be placed in this directory.

    • size=<size> specifies the size of the texture cache (either temp or dir, but not local) in MB. This size will change the size of the cache in the same way as running htexcache -z <size>. For example, a texture file $HIP/maps/color.png would have a local texture file created in $HIP/maps/color.rat, but a texture stored in an HDA cannot have a local texture created, so a cached file would be created in the temp disk cache. Note: Information about the temp or dir texture cache directories can be queried/set using the htexcache command line tool.

  • HOUDINI_TOOLBAR_PATH

    The search path for factory and custom shelves and shelf tools (i.e., shelf files). The shelf files are searched for and loaded when Houdini starts. They can define new tools that appear in the TAB menu or new groupings of tools (i.e., toolbars or shelves) which can be displayed in the shelving area (usually, just below the main menu).

  • HOUDINI_RADIALMENU_PATH

    The search path for factory and custom radial menus. The radial menu files are searched for and loaded when Houdini starts.

  • HOUDINI_RAMP_PATH

    The search path for factory and custom ramps. The ramp files are searched for and loaded when Houdini starts.

  • HOUDINI_LUT_PATH

    The search path for factory and custom LUTs.

  • HOUDINI_UI_APP_PATH

    An application search path for .ui definition files. Use care when changing this path, otherwise the graphical Houdini applications may not start.

  • HOUDINI_UI_AUDIO_PATH

    An application search path for the audio notification files used by the interface. Use care in changing this path, otherwise audio notifications may stop working.

  • HOUDINI_UI_CURSOR_PATH

    An application search path for locating the Houdini mouse cursor set. Use care when changing this path, otherwise the mouse cursor may not reflect its current context.

  • HOUDINI_UI_DIALOG_PATH

    An application search path for locating the Houdini dialog files generated from states, handles, operators and HDAs. Use care when changing this path, otherwise the parameter pane will not show any user interface for the chosen objects.

  • HOUDINI_UI_PATH

    The base path for all user interface files. Use extreme care when changing this variable, or graphical Houdini applications may not start. Before adding paths to this variable, check the other HOUDINI_UI variables to see if one or more of those paths will accomplish what you need. Adding a new path to this variable can be expensive.

  • HOUDINI_UI_TEMPLATE_PATH

    An application search path for locating the parts Houdini uses to compose a user interface for states, handles, operators and HDAs. Use extreme care when changing this path. Houdini may not recover very well if the user interface parts are missing.

  • HOUDINI_UI_ICON_PATH

    The search path for icon files. Setting this path will override the default of $HOUDINI_PATH/config/Icons.

  • HOUDINI_GEOMETRY_FORMAT

    Specifies the default geometry format used when saving geometry. The default is to use the current version of Houdini’s version. Setting to "hclassic" will save geometry in Houdini 11's geometry format, which doesn’t support all the features of later formats.

  • HOUDINI_ICON_CACHE_DIR

    The directory to store the cache of rendered icons in. By default, this cache is stored in $HOUDINI_USER_PREF_DIR/config/Icons. If your home directory is slow (for example, if home directories are stored on networked servers), setting this to a local path may help Houdini’s startup time.

  • HOUDINI_NO_EXTERNAL_ICON_CACHE

    When set, Houdini will not use or store an external cache of rendered icons.

    This is intended for debugging icon cache problems. It should not be used in general as it can dramatically increase startup time.

  • HOUDINI_VEX_PATH

    The search path for VEX code. Setting this path will override the default path of $HOUDINI_PATH/vex/. Searching for the dialog scripts is independent of VEX searching and is controlled by the HOUDINI_PATH.

  • HOUDINI_GLSL_PATH

    The search path for GLSL code. Setting this path will override the default path of $HOUDINI_PATH/glsl/. Searching for the dialog scripts is independent of GLSL searching and is controlled by the HOUDINI_PATH.

  • HOUDINI_SPIRV_PATH

    The search path for compiled SPIR-V shader files. Setting this path will override the default path of $HOUDINI_PATH/spirv/.

  • HOUDINI_ASSET_STORE_PATH

    The search path for the user’s asset store related files (asset OTLs, licenses, list of installed assets, etc)

  • HOUDINI_OUTLINEFONT_PATH

    This is the path searched for Adobe Type 1 or True Type fonts used in the Font SOP and Font COP.

  • HOUDINI_BACKUP_DIR

    This is the directory used to store the backed-up hip files when the Numbered Backup save option is set. HOUDINI_BACKUP_DIR must be set to a native file path. Custom file system (FS) paths are not supported.

  • HOUDINI_BACKUP_FILENAME

    A template for the filename used for file backups when the “Numbered Backup” save option is set. Two variables are required: $BASENAME, which will be replaced by the name of the file being saved without its extension; and $N, which is replaced by the backup number. $N can be followed by a single digit which is interpreted as the number of digits to be used in the backup number; numbers with fewer digits than this will be padded with zeroes. Default value is $BASENAME_bak$N.

    A subdirectory path may be included, but only $BASENAME will be replaced in this part of the template. This may be used to group all the backups for a given file into a subdirectory (e.g. $BASENAME/$BASENAME_bak$N).

    Note that you’ll need to escape the $ characters if setting the variable in a houdini.env file (e.g. \$BASENAME/\$BASENAME_bak\$N).

  • HOUDINI_AUTOSAVE_FILENAME

    A template for the filename used for auto save file backups when the Numbered Backup auto save option is set. Two variables are required: $BASENAME, which will be replaced by the name of the file being saved without its extension; and $N, which is replaced by the backup number. $N can be followed by a single digit which is interpreted as the number of digits to be used in the backup number; numbers with fewer digits than this will be padded with zeroes. Default value is $BASENAME_auto$N.

    A subdirectory path may be included, but only $BASENAME will be replaced in this part of the template. This may be used to group all the backups for a given file into a subdirectory (e.g. $BASENAME/$BASENAME_auto$N).

    Note that you’ll need to escape the $ characters if setting the variable in a houdini.env file (e.g. \$BASENAME/\$BASENAME_auto\$N).

  • HOUDINI_MAX_BACKUP_FILES

    Setting this environment variable will limit the number of backup files Houdini creates when the “Numbered Backup” save option is set. Setting this environment variable to 0 will disable the limit and Houdini will write as many backup files as resources permit (default). Once the limit is reached, the file with the oldest numbered suffix in the filename will be deleted.

  • HOUDINI_STASH_DIR

    This is the directory used to create default path for storing the stashed geometry from the Stash SOP. No variable expansion is done on this when it is converted to a path parameter.

    Default value is $HIP/stash.

  • HOUDINI_STASH_FILENAME

    A template for the filename used for stashing when the Stash SOP has to create a new file. $OS will be replaced with the name of the stash sop, unless it is in a locked HDA, in which case it will be the first editable parent. $N is replaced with a random hexadecimal string chosen to ensure uniqueness. Other environment variables will be expanded, such as $HIPNAME, at the time the path is created.

    The file will be suffixed with the appropriate file type, usually .bgeo.sc.

    Default value is $HIPNAME.$OS.$N.

  • HOUDINI_NO_SPLASH

    Setting this environment variable will disable the Houdini splash screen from being displayed.

  • HOUDINI_SPLASH_MESSAGE

    Defines a custom message that will appear on the splash screen. Placing the three character string //n in this message will place a new line in the splash screen.

  • HOUDINI_SPLASH_FILE

    Defines a custom file to load for the splash screen. You may want to augment this with the HOUDINI_SPLASH_MESSAGE to write build-specific information.

    Note

    This option is not available in apprentice sessions.

  • HOUDINI_BUFFEREDSAVE

    When enabled, files are first saved to a memory buffer and then written to disk. This is useful when saving over the network from Windows 2000 machines, or other places where seeking to the network is expensive.

  • HOUDINI_VDB_FORCE_STREAM_SAVE

    When enabled, this forces .vdb files to be saved via a file stream that disables the ability to perform delayed loading on the saved .vdb files. This can improve file write performance by avoiding file seeking. Notably, Qumulo file systems suffer from this (but not Isilon file systems).

  • HOUDINI_ALLOW_PYTHON_SOP_MULTITHREADING

    When set to 1, Houdini will allow Python SOP nodes to execute multi-threaded code that calls into the hou package from separate threads.

    When set to 0, Houdini will hang when a Python SOP node executes multi-threaded code that calls into the hou package from separate threads.

    The caveat with setting HOUDINI_ALLOW_PYTHON_SOP_MULTITHREADING to 1 is that Houdini can hang in other use cases that do not cause it to hang when the variable is set to 0. For example, when a Python SOP node cooks in a separate thread or when a custom background thread attempts to call into the hou package while Houdini cooks.

    The default setting is 0.

  • HOUDINI_VIEWERHANDLE_PATH

    The search path for viewer handle files used for implementing python viewer handles. Houdini searches these files at startup to register viewer handles.

  • HOUDINI_VIEWERSTATE_PATH

    The search path for viewer state files. These are python files used for implementing viewer states. Houdini searches them at startup to register standard and user-defined viewer states.

  • HOUDINI_HUSDPLUGINS_PATH

    The search path for various Solaris python plugins. Subdirectories under this path will contain python modules that implement functionality used by, for example, the Scene Import LOP (to convert Object nodes to USD equivalents), and the Material Library LOP (to convert VOP nodes to UsdShade primitives).

  • HOUDINI_LAYOUTPLUGINS_PATH

    The search path for plugin files related to layout tools, such as asset manager definitions.

  • HOUDINI_CLONEPLUGINS_PATH

    The search path for plugin files related to Houdini cloning, such as for launching a clone on a render farm.

  • HOUDINI4_COMPATIBILITY

    When this is enabled, some of the quirks of Houdini 4 are turned on. This is designed to be used to allow old hip files to be loaded. Support for these inconsistencies is not guaranteed in future versions of Houdini. Currently, this will:

    • Change the order of points in Spheres, Tubes, Torii, and Circles under certain orientations.

    • Reverse the direction of the Clip SOP’s Distance parameter.

    • Revert to the old capture region weighting method.

  • HOUDINI55_COMPATIBILITY

    When this is enabled, some of the quirks of Houdini 5.5 (and earlier) are turned on. This is designed to allow old hip files to be loaded identically. Support for these inconsistencies are not guaranteed in future versions of Houdini. Currently, this will:

    • Not always use the shortest path rotation blending the PolyWire SOP and Composite CHOP

    • Revert to the old boneangle() behavior of calculating the angle between the two negative Z axes of the given bones. Note that usually this expression would have been used as (180-boneangle(...)) which can easily be converted into the new behavior by no longer subtracting from 180.

    • The Switch Operators in POPs, SOPs, COP2s and SHOPs will not consolidate null inputs.

    • When globbing channel patterns, the order will be reverted back to reverse creation order. This affects the Fetch CHOP, and the following hscript commands: chls, chread, chwrite

    • The "tmgls -l" hscript command will revert to showing paths that start with /Director.

    • Revert to the old behavior where when Houdini is told to look at something with an up vector that is parallel to the target direction, we do nothing. This affects all of Houdini. This includes (but not limited to) the Look At parameter in all operators, the mlookat() expression function, and the lookat() VEX function.

  • HOUDINI6_COMPATIBILITY

    When this is enabled, some of the quirks of Houdini 6.0 (and earlier) are turned on. This is designed to be used to allow old hip files to be loaded identically. Support for these inconsistencies are not guaranteed in future versions of Houdini. Currently, this will:

    • With soft transforms (SoftPeak, SoftTransform, and Soft Options in the Edit SOP that are not applied) and Ignore Connectivity Off, connectivity does not respect the soft radius. In Houdini 6.1 and later, two points are connected only if there is a sequence of edges within the soft radius that connects them. In 6.0 and earlier, or with this flag on, they are connected if there is any sequence of edges that connects them.

    • The Fetch CHOP will create the order of its fetched tracks in the following order:

      • animated channels (in the parameter order of fetched operator)

      • chop data tracks

      • non-animated parameters (again in parameter order)

    • The Edit SOP will use an old method for determining how a surface changes relative to the rest input.

  • HOUDINI7_COMPATIBILITY

    When this is enabled, some of the quirks of Houdini 7.0 (and earlier) are turned on. This is designed to be used to allow old hip files to be loaded identically. Support for these inconsistencies are not guaranteed in future versions of Houdini. Currently, this will:

    • The Object CHOP has a parameter Compute whose value Single Bearing Angle measures an angle between +z axis and the direction vector from source to target object. This angle was incorrectly decremented by 90 degrees in earlier versions. Right now, when a target object is right ahead of the source (measuring along z-axis), the angle is correctly computed as 0 instead of -90 which would be the case in Houdini 7.0.

  • HOUDINI8_COMPATIBILITY

    When this is enabled, some of the quirks of Houdini 8.0 (and earlier) are turned on. This is designed to be used to allow old hip files to be loaded identically. Support for these inconsistencies are not guaranteed in future versions of Houdini. Currently, this will:

    • The global VOP variable list will include the illuminance global variables on only on nodes that are direct children of Illuminance VOPs. That is, the variables of deeply nested children will not be taken into consideration. Though omitting such variables is technically wrong, adding the illuminance variables to all child nodes of any depth would mess up the variable order and break existing VOP networks.

    • The csh-style variable modifiers will be disabled. Normally, Houdini uses csh-style modifiers to expand variables for hscript and Houdini. For example, for variable value of ryan.cmd, $var:r returns ryan.

  • HOUDINI95_COMPATIBILITY

    When this is enabled, some of the quirks of Houdini 9.5 (and earlier) are turned on. This is designed to be used to allow old hip files to be loaded identically. Support for these inconsistencies are not guaranteed in future versions of Houdini. Currently, this will:

    • The Transform CHOP will use the old (incorrect) interpretation of the Transform Order parameters.

  • HOUDINI10_COMPATIBILITY

    When this is enabled, some of the backwards compatibility issues of Houdini 10.0 (and earlier) are turned on. This is designed to allow old hip files to be loaded identically in later versions. Support for these inconsistencies are not guaranteed in future versions of Houdini. Currently, this will:

    • Provide old behavior of the cycle(), cyclet() hscript expressions and HOM functions.

  • HOUDINI11_COMPATIBILITY

    When this is enabled, some of the backwards compatibility issues of Houdini 11.0 (and earlier) are turned on. This is designed to allow old hip files to be loaded identically in later versions. Support for these inconsistencies are not guaranteed in future versions of Houdini. Currently, this will:

    • Patterns matching deprecated capture attributes names can match the modern capture attributes in the Attribute Transfer SOP and Attribute Composite SOP.

    • The Unix command will default to running csh instead of the value in the $SHELL variable.

    • The operator type name specified for node creation will be used exactly as is, without optype namespace or version lookup. This is equivalent of always specifying -e for opadd or passing true as exact_type to hou.Node.createNode(). It allows scripts generated by opscript in Houdini 11 to always recreate exact node network, even if there are newer versions of some operators.

  • HOUDINI17_COMPATIBILITY

    When this is enabled, some of the backwards compatibility issues of Houdini 17.0 (and earlier) are turned on. This is designed to allow old hip files to be loaded identically in later versions. Support for these inconsistencies are not guaranteed in future versions of Houdini. Currently, this will:

    • Use old cracktransform() behavior for transform orders where rotates come before scales.

  • HOUDINI19_5_COMPATIBILITY

    When this is enabled, some of the backwards compatibility issues of Houdini 19.5 (and earlier) are turned on. This is designed to allow old hip files to be loaded identically in later versions. Support for these inconsistencies are not guaranteed in future versions of Houdini. Currently, this will:

    • Make $FF and hou.frame(False) round to 6 significant digits instead of rounding to 6 digits after the decimal place.

  • HOUDINI11_PERFMON_COMPATIBILITY

    When this is enabled, clicking on the Windows ▸ Performance Monitor menu entry will open the performance monitor that was available in Houdini 11.1 and earlier versions. The 11.1 performance monitor also supplies performance data to the node information tooltip window (i.e. a node).

  • HOUDINI10_VOLUME_COMPATIBILITY

    When this is enabled the .bgeo saving of volumes will use the untiled format compatible with early versions of 10.0 and earlier versions of Houdini.

  • HOUDINI13_VOLUME_COMPATIBILITY

    This setting will turn off saving of shared data for volume primitives. When this is enabled geometry files may be significantly larger and sharing information will be lost when re-loading geometry. This usually only impacts geometry that has multiple copies of the same volume primitive.

  • HOUDINI13_GEO_COMPATIBILITY

    This setting will enable the saving of .geo/.bgeo files compatible with 13.0 versions of Houdini. See also HOUDINI13_VOLUME_COMPATIBILITY.

  • HOUDINI14_GEO_COMPATIBILITY

    This setting will enable the saving of .geo/.bgeo files compatible with 14.0 versions of Houdini. If this is not set, packed geometry primitives will not be loaded properly.

  • HOUDINI15_PARMDATA_COMPATIBILITY

    This setting will enable the saving of geometry parameter data in a fashion compatible with early 15.0 and 15.5 versions of Houdini.

  • HOUDINI15_5_GEO_COMPATIBILITY

    This setting will enable the saving of .geo/.bgeo files compatible with 15.5 versions of Houdini. If this is not set, files with polygons or tetrahedra saved in Houdini 16.0 or later will not be loaded properly in Houdini 15.5 or earlier.

  • HOUDINI16_5_DEFORM_COMPATIBILITY

    This setting will enable the old bone deform algorithm that allowed for separately deforming the two ends of capture regions by animating their end caps.

  • HOUDINI6_FILTER_COMPATIBILITY

    There was a large bug found in the low level filtering code in Houdini6.1. Fixing this bug caused the results of filtering to change quite dramatically from previous versions. To maintain previous behavior, this control can be set. However, use of this control is discouraged since the filtering was incorrect before the fix. This control may be removed in future versions of Houdini.

  • HOUDINI13_FILTER_COMPATIBILITY

    There was a large bug found in the mip-map computations for texturing in Houdini13. Fixing this bug caused the results of filtering mip maps to change quite dramatically from previous versions. To maintain previous behavior, this control can be set. However, use of this control is discouraged since the filtering was incorrect before the fix. This control may be removed in future versions of Houdini.

  • HOUDINI18_COMPATIBILITY

    When this is enabled, some of the backwards compatibility issues of Houdini 18.0 (and earlier) are turned on. This is designed to allow old hip files to be loaded identically in later versions. Support for these inconsistencies are not guaranteed in future versions of Houdini. Currently, this will:

    • Use a broken KMeans++ method in the Cluster SOP, preserving the clusters that are generated.

  • HOUDINI_SIMPLIFIED_NODE_NAMES

    When this is enabled, node names are not permitted to have . or - characters in them. By default these characters are allowed.

  • HOUDINI_HIPEXT

    When this variable is set, Houdini will no longer add the .hip extension from the Save dialog. This also controls the addition of .otl and .bgeo extensions in the relevant save dialogs.

  • HOUDINI_ACCESS_METHOD

    This value can be 0, 1, 2, or 3 (default). It selects the method used by Houdini to check file and directory permissions under Windows. 0 checks the permissions of the current user against the Windows user and group permissions set for the file in question. This method may be slow on machines that use a network login server. 1 uses a different method for checking the Windows user and group permissions, but relies on functionality that is broken in Windows 2000 Service Pack 2. Method 2 simply checks the file attributes. This method is fast, but ignores the user and group permissions, and so may report that some files or directories can be written to when actually they cannot. Method 3 is the newest method that uses the CreateFile() Window API for checking.

  • HOUDINI_COOK_MODE_THRESHOLD

    Setting this variable will set a safety limit (in Megabytes) for the memory consumption of Houdini. If Houdini goes over this memory limit, it will immediately switch into the Never cook mode and alert the user. Setting this environment variable to 0 will disable this feature. This setting is only necessary when running on 32-bit operating systems.

  • HSCRIPT_SAFEQUIT

    If this variable is set, the quit command in hscript will prompt the user to verify that they want to quit.

  • HSCRIPT_ALLOW_BACKGROUND_RENDER

    By default, hbatch will force renders to block hbatch until the render is complete. Setting this variable will allow hbatch to render in the background.

  • HOUDINI_OLD_RATS

    This variable controls the format for RAT file textures that will be generated by Houdini. When it is set to 0, the new TBF file format will be used. When set to 1, the old RAT format will be used. The default value for this option is 0. In general, TBF textures will have better performance, so this variable should only be enabled when a texture must be compatible with versions of Houdini prior to version 8.0.

  • HOUDINI_QTML_USE_GDI

    This variable is used to tell QuickTime to use GDI instead of DirectDraw or DCI on windows platforms. GDI is forced when set to 1, and QuickTime makes the decision when set to 0. The default value for this option is 1 to avoid crashes in QuickTime dialog components that seem to be related to some NVidia drivers.

  • HOUDINI_MAX_CACHED_FBX_SCENES

    Sets the maximum number of cached FBX scenes to keep in memory. Useful in scenes that link to multiple FBX files on disk to avoid reloading complete files every time a node cooks. The default value is 1, the minimum is 0, and the maximum is 20.

  • HOUDINI_TRANSFORM_MOTIONCLIP

    When this is enabled, the results of evaluating a MotionClip will be transformed by the intrinsic transform matrices of its packed geometries. With this enabled, MotionClips can be altered by nodes such as the Transform SOP. By default, this is enabled.

  • HOUDINI_NETEXCHANGE_HEARTBEAT

    When a distributed simulation is exchanging data with other nodes it will often block while waiting for the other nodes to catch up. During this time the process can appear dead because it is no longer using any CPU. When this heartbeat is a non-zero positive value, it represents the number of seconds between printing out heartbeats to standard out, thereby reminding the world that this process is still alive.

  • HOUDINI_NETEXCHANGE_MINPACKETSIZE

    During a distributed pressure solve many small packets are sent. Some network configurations may delay sending small packets, choosing to delay them until additional data shows up. This option specifies the size in bytes of the minimum packet to send during the interchange. Using ping -s may allow one to determine what packet sizes are sent reliably by your network.

  • HOUDINI_NETEXCHANGE_QUICKACK

    Set the TCP_QUICKACK hint to the read sockets when performing piped transfers. This will will immediately send ACKs rather than waiting for latency-inducing timeouts.

  • HOUDINI_DOPVOLUME_NANTEST

    When enabled the various DOP gas micro solvers will scan their fields for NANs before and after processing. This can be useful for finding where these numbers are showing up in a simulation. It is helpful to set perfmon -o stdout first so one can tell which micro-solver is operating when the NaN test outputs an error.

  • HOUDINI_MULTITHREADED_COOKING

    EXPERIMENTAL: When enabled, Houdini will attempt to perform multi-threaded node cooking where possible. As of Houdini 11, cooking problems can occur such as deadlocks if enabled. Note that this environment setting currently does NOT affect anything other than viewport object cooking.

  • HOUDINI_DISABLE_NESTED_MULTITHREADING

    When multi-threaded algorithms nest, the inner algorithm will also multi-thread, relying on task-based parallelism. However, Houdini’s original multi-threaded systems assumed no nesting. Setting this to 1 will disable nested multi-threading in the old-style algorithms, which likely results in slower and less efficient multi-threading. However, in case deadlocks or other problems are discovered, this flag can be used to restore the old behavior to see if this change is the cause.

  • HOUDINI_OGL_FIXEDVOXELSIZE

    Instead of scaling the density of voxels in volumes by their size, all voxels are treated as if they were 1 x 1 x 1 cubes when computing opacity for display. This results in things appearing more opaque if they are higher resolution.

  • HOUDINI_OGL_VOLUMESHADING

    Houdini uses GPU compute shaders to apply lights to smoke volumes on hardware that supports it. When this environment variable is set to 0, a different technique is used to perform lower-quality shading on the CPU instead.

  • HOUDINI_OCL_VENDOR

    Specifies the platform vendor to choose when creating the OpenCL context Houdini uses for OpenCL processing.

  • HOUDINI_OCL_DEVICETYPE

    Specifies the type of OpenCL device to use for OpenCL processing. The choices are GPU and CPU. If HOUDINI_OCL_VENDOR is set, then once a platform vendor is identified, only devices of the specified type will be used. If HOUDINI_OCL_VENDOR is not set, then all available OpenCL platforms will be searched and the first device of the specified type returned. Setting this variable is therefore and easy way to switch devices.

  • HOUDINI_OCL_DEVICENUMBER

    In the case of multiple OpenCL devices existing of the type specified by HOUDINI_OCL_DEVICETYPE, this variable selects which of these devices to use for OpenCL processing. For example, with a computer with more than one GPU this allows selection of a GPU other than the default for OpenCL.

  • HOUDINI_OCL_PATH

    The search path for OpenCL kernels. Setting this path will override the default path of $HOUDINI_PATH/ocl/.

  • HOUDINI_OCL_COP_MEMORY

    This variable is the fraction of total OpenCL device memory that COPs are permitted to use. For example, the default setting of 0.125 will make it so that COPs will try using no more than an eighth of the device memory. Once memory usage by COPs exceeds this limit, images start getting evicted to main memory. A lower value for this environment variable will make COPs play nice with other OpenCL users by constraining how much memory images can take up, but may also result in worse interactive performance.

  • HOUDINI_COP_SWIFTSHADER_RASTERIZE

    This variable can be used to force the Rasterize Geometry COP to use a software implementation of Vulkan to do its work. This is slower, but may fix crashes and instabilities from the operator.

    Set the value to 1 to use the software rasterizer.

  • HOUDINI_OCL_MEMORY_POOL_SIZE

    Houdini uses a memory pool for allocating device memory through OpenCL for improved performance and to decrease fragmentation. This variable is the percentage of total device memory to allocate for the pool. For example, the default setting of 0.125 will allocate 1/8 of device memory for the memory pool. Note that if the specified OpenCL device is 32-bit, the total device memory is clamped to 4 GB before being multiplied by this percentage.

  • HOUDINI_OCL_REPORT_BUILD_LOGS

    When enabled, Houdini will output the build log of every OpenCL kernel that it compiles. The amount of output is controlled by a combination of bit flags

    • 1 outputs the compiler build log (eg. clGetProgramBuildInfo)

    • 2 outputs the compile flags passed to the compiler

    • 4 outputs the kernel source code.

  • HOUDINI_OCL_KERNEL_OPTIONS

    Houdini will append the value of this string variable to the compile flags for every kernel that it compiles, allowing control of debug or optimization flags for all OpenCL kernels.

  • HOUDINI_OCL_REPORT_MEMORY_USE

    When enabled, Houdini will output OpenCL memory usage statistics after every set of OpenCL kernel calls.

  • HOUDINI_OCL_OGL_INTEROP

    Houdini attempts to share OpenCL buffers with OpenGL for rendering when this is possible. Setting this environment variable to 0 disables this interoperability between OpenCL and OpenGL.

  • HOUDINI_OCL_FEATURE_DISABLE

    A list of OpenCL device features that will be disabled in Houdini, which can be helpful for debugging device failures. These mostly correspond to OpenCL 3.0 feature support flags, e.g. CL_DEVICE_DEVICE_ENQUEUE_SUPPORT.

  • HOUDINI_OCL_IMAGE_ADVECTION

    The Gas Advect CL DOP tries to convert the velocity field to an image before performing the advection. Setting this environment variable to 0 will force this DOP to avoid the image conversion.

  • HOUDINI_OCL_CACHE_DIR

    The directory to store the cache of OpenCL binary kernels. Caching the binary kernels can significantly speed up the subsequent loading of complicated OpenCL kernels after they have been compiled once. The default location for the cache is $HOUDINI_TEMP_DIR/OCL_CodeCache.

  • HOUDINI_OCL_CACHE_SIZE

    The size in megabytes for the OpenCL binary cache. The default is 256 MB.

  • HOUDINI_OCL_CACHE_ENABLE

    Enable the OpenCL binary cache when set to 1, which is also the default value.

  • HOUDINI_OCL_IGNORE_INTEL_GPU

    Will ignore Intel GPUs as OpenCL device when set to 1. This is off by default.

  • HOUDINI_OCL_IGNORE_NONDOUBLE_DEVICES

    Will ignore OpenCL devices that do not support doubles when set to 1. This is off by default.

  • HOUDINI_IOBUFFER_SIZE

    The number of megabytes to spool into the background output thread before blocking the addition of new write tasks.

  • HOUDINI_DOP_MAXCACHE

    Sets a maximum DOP cache size in megabytes. Even if the DOP node has a cache size larger than this specified, it will be clamped by this amount. If negative (the default) no clamping is done.

  • HOUDINI_SOP_DISABLE_CACHENODE

    The Cache SOP is disabled if this option is set.

    NOTE: This may break networks that rely on caching, and/or greatly slow down networks by causing recooking where caching was used.

    It can be useful if Cache SOPs are only used for playblast and one wants to ensure a farm machine doesn’t accumulate memory.

  • HOUDINI_SOP_DISABLE_COMPILENODE

    The Block End Compile SOP will always be non-compiled if this is set.

    This is useful if you want to do performance testing to see differences between compiled and non-compiled settings, or rule out compiling as a source of a bug.

  • HOUDINI_RUN_IN_FOREGROUND

    If set to 1, Houdini GUI applications will by default run as a foreground application, if run form a shell or a terminal. Otherwise, GUI applications will put themselves in the background, no longer associated with the shell or terminal. This option has no effect on OS X.

  • HOUDINI_OGL_FAST_BONES

    When enabled, nulls and bones rendering is done by accumulating all the objects and issuing one instanced drawing call.

  • HOUDINI_FAST_TRANSFORM_HANDLES

    Enable experimental feature to use a single vertex shader to draw all the transform handle parts.

  • HOUDINI_DISTRIBUTEDPROJECTION_DIAGNOSTICS

    Perform extra checks to verify distributed slices are building coherent projection matrices during distributed pressure solves. Turn this on if distributed solves are failing to converge to get extra diagnostic information to submit.

  • HOUDINI_SAS_DISABLE_ASSET_DOWNLOAD

    If set to 1, prevents graphical Houdini from downloading assets (i.e. Simple Toon Character) from Orbolt that are regularly installed in every Houdini distribution. Default is 0.

  • HOUDINI_USE_HFS_OCL

    Set to its default value of 1, this variable tells Houdini to load the built-in CPU OpenCL driver that is shipped in $HFS (64-bit Windows and Linux only). This built-in CPU device can be selected using the regular OpenCL device specifications, e.g. HOUDINI_OCL_DEVICETYPE=CPU.

    Houdini will also fall back to using this driver if the usual OpenCL device selection process fails, making it safer to submit OpenCL jobs to a renderfarm that has no GPUs. Set this variable to 2 to disable this fallback mechanism, or 0 to disable the built-in device completely.

    If this environment variable is set to zero in the underlying operating system via the command-line or registry, then the built-in driver will never be loaded into memory at all, avoiding some crashing issues with virtual display drivers. However, if it is set to zero in houdini.env, the built-in driver will be loaded into memory but ignored for device selection.

    On OS X this variable has no effect.

  • HOUDINI_DISABLE_AUDIO_SERVER

    If set to 1, prevents the Audio Server from initializing. Default is 0.

  • QT_MOUSE_COMPRESS_LIMIT

    On Linux, Qt compresses mouse move events for improved performance. Compression works by issuing out a single mouse event to the application for a group of mouse events that occurred within a small time period. The downside to mouse event compression is that it diminishes the quality for operations that track mouse movement (i.e. drawing curves in the viewport). This is why Houdini disables mouse event compression by default.

    You can turn compression back on by setting QT_MOUSE_COMPRESS_LIMIT to a non-zero, integer value. The value represents the maximum number of mouse move events to be compressed for each compression run. The higher the limit the more compression that is allowed.

    Set this variable only if you are experiencing slow response times when interacting with Houdini’s viewport or any interface in Houdini that tracks mouse movement (i.e. an OpenGL viewport written in PySide or PyQt).

    This variable affects only Linux.

  • HOUDINI_CHOP_MOTION_SAMPLES

    This variable overrides the Global Animation Settings CHOP Motion Samples value if the hchannel.pref file isn’t present. It can be use to increase the CHOP sampling rate for Constraints at render time.

  • HOUDINI_NVIDIA_OPTIX_DSO_PATH

    Defines the OptiX DSO search path. The existence of this variable also determines whether the IPR toolbox enables the denoise button or not.

  • HOUDINI_NVIDIA_OPTIX_DEVICENUMBER

    Device ID to use for OptiX denoiser. Use hgpuinfo -o to determine OptiX device IDs. Leave it undefined or -1 to use the first device.

  • HOUDINI_WINDOW_REDRAW_RATE

    Defines the number of milliseconds between windows redraws. This can be useful on remote desktop sessions or on recording sessions. Default value is 0, which doesn’t use a redraw timer.

  • HOUDINI_PACKAGE_DIR

    Specifies one or multiple custom directory paths Houdini can use for scanning package files.

  • HOUDINI_PACKAGE_VERBOSE

    Enables the logging of messages to the console during package processing.

  • HOUDINI_PACKAGE_SKIP

    Disables the package processing.

  • HOUDINI_VIEWER_STATE_VERBOSE

    Enables the logging of messages to the console during the viewer state registration at startup.

  • HOUDINI_ERROR_ON_ILLEGAL_NODE_EDITS

    Set this to 0 to prevent errors from being thrown when modifying the scene while cooking. This environment variable exists solely as an escape hatch to allow illegal behavior. It will be removed without notice in the future where illegal node edits will be permanently disallowed.

    Currently, this applies to destroying nodes in Python while cooking. If you disable this, Houdini is liable to crash at any moment when using a scene that does this.

  • HOUDINI_DISABLE_SOP_MEMORY_TRACKING

    Disables the memory tracking of the SOP cache manager. This can be used to remove the overhead of computing the consumed memory.

  • HOUDINI_LOAD_VERIFICATION

    When enabled, attempts to fix problems by performing additional verification checks when loading. This currently only checks spare parameters when loading nodes. Disabled by default.

  • HOUDINI_DISABLE_PDG

    When enabled, PDG node types will not be created at startup. This will be a minor improvement for startup time but will make TOP nodes inoperable.

  • HOUDINI_PDG_DEFAULT_SERVICE_POOL_SIZE

    When set to a positive value, this variable determines the pool size for the default ROP Fetch and Python services created by PDG. Once the services have been created their configuration is saved to the $HOUDINI_USER_PREF_DIR/pdgservices.json file, and this variable will no longer have an affect on their pool size.

    If this variable is not set or is set to a value of 0, the pool size for the default services is initialized to half the number of cores on the system.

  • HOUDINI_PDG_CACHE_DEBUG

    Determines if PDG should print output file cache information during the cook. By default this is disabled, but setting it to a value between 1 and 4 will enable debug output:

    Setting the value to 1 will enable logging of cache misses due to stale or missing cache entries, or work items that always write files.

    Setting the value to 2 will print all of the same information, as well as cache hits and updates to the cache file table.

    A value of 3 will cause PDG to also print a message each time a work item’s cache id is incremented or synchronized from its dependencies.

    In addition to the above, a value of 4 will cause PDG to print a message each time a custom cache or dirty handler successfully processes a file or work item.

  • HOUDINI_PDG_EXPR_DEBUG

    Determines if PDG should print out attribute expression debug information during the cook. By default this is disabled, but setting it to a value between 1 and 3 will enable debug output:

    Setting the value to 1 will enable logging of attributes that have been marked as time dependent, and attributes that have been dirtied. In both cases the log messages will only appear in batch worker processes that are evaluating networks via PDG, such as the ROP Fetch or HDA Processor. PDG work item attributes are not time dependent in the process that is evaluating the TOP network.

    Setting the value to 2 will enable logging of all attribute evaluations from parameters that reference work item attributes.

  • HOUDINI_PDG_NODE_DEBUG

    Determines if PDG should print out node status information during the cook. This option can be used to debug graphs that have hung, or to get extra logging information regarding the number of nodes that completed. By default this is disabled, but setting it to a value between 1 and 4 will enable varying levels of node debug output:

    Setting the value to 1 will enable a status print out message each time a node finishes generating or partitioning work items, and when all work items in that node finish cooking.

    Setting the value to 2 will print the messages from the previous debug level, as well as any node error messages.

    Setting the value to 3 will print node generation/cook status, errors and node warnings.

    Setting the value to 4 will print all of the previously mentioned messages, as well as a message for each node callback invocation.

  • HOUDINI_PDG_SCHEDULER_DEBUG

    Determines if PDG should print out scheduler status information during the cook. This option can be used to debug issues with schedulers, or get extra information about what’s happening in the graph. By default this variable is disabled, but setting it to a value of either 1 or 2 will enable logging:

    Setting the value to 1 will enable a status message for scheduler events, such as a cook starting or canceling.

    Setting the value to 2 will enable all messages from the previous debug level, as well as messages that relate to scheduling work items.

  • HOUDINI_PDG_SERVICE_DEBUG

    Determines if PDG should print out information about service client status during the cook. This option can be used to debug issues with services or contention of service clients.

    Setting the value to 1 will enable a status message each time a service client is added, used by a work item, or returned to the available client list

    Setting the value to 2 will enable the previous messages, as well as a debug log message each time a work item is scheduled and no service client is available for that item type.

    Setting the value to 3 will enable the previous messages, as well as additional information about service clients that are being added or cleaned up from a service.

    Setting the value to 4 will enable the previous messages, as well as as a debug message each time a work item job is sent to a service client.

  • HOUDINI_PDG_TRANSFER_DEBUG

    Determines if PDG should print file transfer status information during the cook. This can be used to debug custom file transfer handlers or track down which files the graph is trying to copy into the remote working directory.

    By default this option is disabled.

    Setting this variable to a value of 1 will enable log messages for any failed file transfers.

    Setting the variable to 2 will also enable logging of successful transfers, in addition to failures.

    Setting the variable to 3 will enable all transfer logging, in addition to successful/failed transfers. This includes files that were skipped because they hadn’t been modified between transfers, or have the same local and remote path.

    Finally, setting the variable to 4 enables all of the above as well as special print outs for debugging any custom transfer handlers.

  • HOUDINI_PDG_WORK_ITEM_DEBUG

    Determines if PDG should print work item status information during the cook. This can help track down when a work item fails, or provide verbose output that gets consumed by a farm system or build scheduler for tracking progress.

    By default this option is disabled.

    Setting this variable to a value of 1 will enable log messages for all work items that cook with a scheduler. This includes items that cook in-process like the Invoke, but excludes work items like the ones in an Attribute Create which don’t do any work while cooking. This log level makes it possible to only see log messages for items that are doing “real” work.

    Setting this variable to a value of 2 will enable the same logging as level 1, but for all types of work items. This includes partitions and items in nodes like the Attribute Create TOP which don’t do anything when they cook.

  • HOUDINI_PDG_TYPE_ERROR

    Determines if errors when loading PDG node and scheduler definitions should be printed to the console. This can help in debugging problems loading custom node types.

    By default this is disabled.

    The existence of the variable in the environment (or setting its value to 1) will cause loading errors to be printed.

    Setting the value to 2 will cause PDG to print a message for each node type that it loads.

  • HOUDINI_PDG_TYPE_SKIPLIST

    Specifies a list of file or directory names to skip when loading PDG Python modules from the search path. Entries in the list should be separated by a : character.

  • HOUDINI_ENABLE_HOM_ASSERTS

    When enabled, hou.assertTrue(condition) will raise an AssertionError when condition evaluates to False.

  • HOUDINI_BGEO_TO_USD_DEFAULT_ARGS

    A string that specifies a default set of arguments that are used by the USD plugin for loading BGEO files. These arguments should be expressed in the same form they would be when passing them as part of the asset path. These default arguments are treated with lower priority than either arguments passed as part of the asset path or any detail attributes set in the BGEO file.

    The accepted arguments match the names of the detail attributes that are created by the USD Configure SOP, but with the usdconfig prefix removed. See the help for that node for more information about all the available arguments.

    sampleframe=1

    Causes the plugin to author geometry attributes as time samples at time code 1, rather than as default values.

    sampleframe=1&topology=animated

    Authors geometry attributes as time samples at time code 1, and also forces topology attributes to be authored as time samples.

  • HOUDINI_HSERVER_USE_HTTP

    Enable http communication when requesting a license from hserver. The behavior of Houdini varies depending on the value.

    0: Do not enable http and only use the legacy protocol. 1: Allow the use of http if available. If for some reason the request did not succeed then fallback to the legacy protocol. 2: Only use http and do not fallback to the legacy protocol if needed.

    The default value is 0.

  • HOUDINI_HSERVER_PORT

    Define the default port to use when trying to connect to the local hserver process. If this environment variable is not set the default value is 1714.

  • HOUDINI_LIC_API_VERSION

    Specify what license API version to use. This is useful if you want to upgrade your license system past what was shipped with and to enable experimental features.

  • HOUDINI_LOP_PLACEHOLDER_LAYERS

    Specify the number of empty placeholder layers that should be added to LOP node stages when they are created. These placeholder layers allow LOPs to modify the stage without modifying the layer stack, which is a relatively expensive operation. The default value is 4.

  • HOUDINI_LOP_STITCH_DEDUPLICATE_SAMPLES

    Controls whether to bypass the generation of time samples during layer stitching when the incoming sample data is the same as the most recent sample data. The default value is 0 (i.e., do not bypass/deduplicate any sample generation).

  • HOUDINI_API_KEY_FILE

    Specify the API key file to be used by hkey and sesictrl. This provides a way to make API calls without the need to login with an email and password.

  • HOUDINI_HDADYNAMICPAYLOAD_CACHESIZE

    For loading HDA payloads in USD. The geometry data from the HDA will temporarily be cached in case it needs to be accessed again in a short period of time. This will specify the maximum size of the cache in MB.

    By default the maximum cache size is 128 MB.

  • HOUDINI_LIC_OPT

    Defines the list of options to apply to all Houdini Applications. For more information, see license system.

  • HOUDINI_CORE_LIC_OPT

    Defines the list of options to apply to all Houdini Core Applications. For more information, see license system.

  • HOUDINI_FX_LIC_OPT

    Defines the list of options to apply to all Houdini FX Applications. For more information, see license system.

  • HOUDINI_INDIE_LIC_OPT

    Defines the list of options to apply to all Houdini Indie Applications. For more information, see license system.

  • HOUDINI_NC_LIC_OPT

    Defines the list of options to apply to all Houdini Apprentice Applications. For more information, see license system.

  • HOUDINI_EXPER_LIC_OPT

    Defines the list of options to apply to all Houdini Experimental Applications. For more information, see license system.

  • HOUDINI_PDG_LIC_OPT

    Defines the list of options to apply to all PilotPDG Applications. For more information, see license system.

  • HOUDINI_HYTHON_LIC_OPT

    Defines the list of options to apply to all hython and hbatch Applications. For more information, see license system.

  • HOUDINI_MANTRA_LIC_OPT

    Defines the list of options to apply to all Mantra Applications. For more information, see license system.

  • HOUDINI_KARMA_LIC_OPT

    Defines the list of options to apply to all Karma Applications. For more information, see license system.

  • HOUDINI_MPLAY_LIC_OPT

    Defines the list of options to apply to all Mplay Applications. For more information, see license system.

  • HOUDINI_PLUGIN_LIC_OPT

    Defines the list of options to apply to all Plugin Applications. Note Unreal and Unity have their own environment variables to control licensing. For more information, see license system.

  • HOUDINI_UNREAL_PLUGIN_LIC_OPT

    Defines the list of options to apply to the Unreal Plugin. For more information, see license system.

  • HOUDINI_UNITY_PLUGIN_LIC_OPT

    Defines the list of options to apply to the Unity Plugin. For more information, see license system.

  • HOUDINI_EDUCATION_LIC_OPT

    Defines the list of options to apply to the Houdini Education Application. For more information, see license system.

  • HOUDINI_LIC_WEBSOCKET

    Enable interactive applications creating a websocket between itself and hserver. The created websocket will allow hserver and applications to send messages to each other. For example, if hserver is unable to connect to sesinetd hserver can send a message back to the application to inform the user its unable to connect and the user should take immediate action.

  • HOUDINI_DEFAULT_LOG_SOURCES

    Controls which logging sources are collected by the log viewer pane when Houdini is started. Defaults to an empty string to indicate that no logging information should be collected by default. This value should be a sequence of tokens separated by spaces. Tokens with spaces can be enclosed in quotes. Wildcards are allowed within a token.

  • HOUDINI_DEFAULT_LOG_FILE

    The path to the file where Houdini logs (sources specified with the HOUDINI_DEFAULT_LOG_FILE_SOURCES variable) are written. If this variable is not set, or HOUDINI_DEFAULT_LOG_FILE_SOURCES is not set, then no log file will be created.

  • HOUDINI_DEFAULT_LOG_FILE_SOURCES

    Controls which logging sources are collected by the default log file when Houdini is started. Defaults to an empty string to indicate that no logging information should be collected by default. This value should be a sequence of tokens separated by spaces. Tokens with spaces can be enclosed in quotes. Wildcards are allowed within a token. The default value is “*” indicating that all logging sources should be captured.

  • HOUDINI_BEARER_TOKENS

    Controls the OAuth2 bearer access token to be added as an Authorization header when making GET requests to a server. The format of the string is <domain of url>:<access token>. To add multiple tokens add a ; before listing the next token. Note that only one access token can exist for each domain. For example, www.sidefx.com:abcdef;www.google.com:tfalkj specifies two tokens. The first being for www.sidefx.com with value abcdef and the second being for www.google.com with value tfalkj.

  • HOUDINI_CONSOLE_PYTHON_PANEL_ERROR

    Errors when starting python panels will also be sent to the console, instead of just displaying them within the panel.

  • HOUDINI_ASSETGALLERY_DB_FILE

    Filename or full path to the file to use for the asset gallery database. This database is the default data source for the Asset Gallery in the Layout LOP.

    If this is an absolute path or a path relative to ., the file will be created at the specified location if it doesn’t already exist.

    If this is just a file name, Houdini will look for the file in HOUDINI_PATH and if it can’t be found then it will be created in $HOME/houdiniX.Y.

    The default value is assetGallery.db.

  • HOUDINI_MATERIALCATALOG_DB_FILE

    Filename or full path to the file to use for the material catalog database. This database is the default data source for the Material Catalog in the Material Linker LOP.

    If this is an absolute path or a path relative to ., the file will be created at the specified location if it doesn’t already exist.

    If this is just a file name, Houdini will look for the file in HOUDINI_PATH and if it can’t be found then it will be created in $HOME/houdiniX.Y.

    The default value is materialCatalog.db.

  • HOUDINI_VIEWPORT_INFO_MAX_FPS

    Defines the maximum frame per second number that the viewport info will display before clamping it. The default value is 120.

  • HOUDINI_DELAYSYNC_HDA

    When a node is created that is a digital asset, delay syncing will not immediately create all the child nodes. This will be delayed until the contents are required by a cook. The intention is that this is always a safe operation.

    Setting this variable to 0 will prevent the delay-syncing of HDAs, helping debug or workaround issues that may arise from this.

  • HOUDINI_ASYNCIO

    Enables asyncio support in python3.7+ when this variable is set to 1.

  • HOUDINI_GL_USE_MATERIALX

    Enable support for MaterialX and Karma materials in the Houdini GL render delegate in the LOP context. The default value is 1.

    0

    MaterialX and Karma materials are not supported.

    1

    Both MaterialX and Karma materials are supported.

    2

    Only MaterialX is supported.

  • HOUDINI_ANIM_ENABLE_GPU_ACCELERATION

    When set to 1, uses GPU acceleration to make the animation graph editor faster. Set to 0 to use the CPU.

    In most cases, this should be kept at 1, unless the GPU is much weaker than the CPU, or if you encounter an error with GPU acceleration turned on.

  • HOUDINI_PLAYBAR_SNAP_TIME_TO_EARLIER_FRAME

    When set to 1, clicking between two frames snaps the time to the earlier frame. When set to 0, the time snaps to the nearest frame. The default value is 1.

  • PDG_LICENSE_MODE

    Restrict PilotPDG or hython --pdg to use specific type of fallback license. A PDG license will always be tried first. If that fails, the default fallback behavior is to try Houdini Engine, then Core, then finally FX licenses. The following values can override this behavior:

    pdg_only

    Only use PDG license. No other fallback licenses are allowed.

    engine_only

    Fallback only to Houdini Engine license.

    houdini_core_only

    Fallback only to Houdini Core license.

    houdini_fx_only

    Fallback only to Houdini FX license.

    This option has been deprecated in favor of the new licensing system environment variables. This option will be removed in a later version.

  • PDG_TRACTOR_USEKEEPALIVE

    Determines Tractor Scheduler TOP task states, eliminates the need to regularly poll the Tractor API for state changes, and reduces the load on the server.

    When the value is set to 1 ($PDG_TRACTOR_USEKEEPALIVE=1), the pdgjobcmd task wrapper will do the following:

    • Sends keep-alive RPC messages to PDG for each active work item. When enough messages are not received, PDG will then stop the given work item’s cook.

    • Sends start/stop RPC messages to PDG when each work item’s cook ends with success or failure.

    By default, PDG_TRACTOR_USEKEEPALIVE is set to 1. This reduces the frequency with which the Tractor API is used to keep track of jobs.

    When the value is set to 0 ($PDG_TRACTOR_USEKEEPALIVE=0), the Tractor API will be polled regularly for work item state changes.

  • PDG_TRACTOR_PASSWORD_FILE

    Enables file-based logins for Tractor Scheduler TOPs.

    Use $PDG_TRACTOR_PASSWORD_FILE to specify the path to the text file that contains the base64-encoded password you want to use.

  • PDG_TR_SPOOLER_DELGATE

    Customizes how Tractor Scheduler TOP tasks are spooled.

    Use $PDG_TR_SPOOLER_DELGATE to specify the Python module that should be used to create the Spooler object.

  • PDG_DIR

    The TOP network’s working directory, as specified on the Scheduler node. In TOP parameters, this is an alias for __PDG_DIR__. This is set in the job environment to the local path to the cook working directory.

  • PDG_TEMP

    A shared temporary file directory inside the working directory for the current session. The default is $PDG_DIR/pdgtemp/‹houdini_process_id. This is set in the job environment.

  • PDG_SCRIPTDIR

    A shared script directory inside the temp directory. Script files are copied into this directory if they are listed as file dependencies. The default is $PDG_TEMP/scripts. This is set in the job environment.

    Alternatively, you can put custom scripts in known locations in the shared network filesystem and execute them using that path.

  • PDG_ITEM_NAME

    The name of the work item being executed, which also corresponds to the name of the serialized work item file in the data directory. This is set in the job environment.

  • PDG_HYTHON

    If set in Houdini, schedulers use this path instead of $HFS/bin/hython. Note that if this is a different version of Houdini being run by Local Scheduler, at least $HFS will need to be cleared in the work item environment to avoid library conflicts.

  • PDG_RESULT_SERVER

    The hostname and port of the server that jobs send their status and results to. This is set in the job environment.

  • PDG_PATHMAP

    The path map in JSON form (if it exists).

  • PDG_PATHMAP_ZONE

    The custom path map zone for the job which is used instead of the automatically determined zone.

  • PDG_BATCH_POLL_DELAY

    Changes the maximum frequency of batch item polling RPCs. Used by the pdgcmd module.

  • PDG_RELEASE_SLOT_ON_POLL

    Allows schedulers to prevent the acquire/release RPCs if they are not supported. Used by the pdgcmd module.

  • HOUDINI_VULKAN_VIEWER

    Overrides the preference for the viewport renderer. Force Vulkan rendering in the viewer when set to 1, or force OpenGL when 0. The default is -1 (use the preference value in Edit ▸ Preferences ▸ 3D Viewports).

  • HOUDINI_VULKAN_VIEWER_MULTITHREADING

    Enables Mutlit-threaded update and draw of viewport primitives while Vulkan viewport rendering is active. Set to 1 to enable or 0 to disable.

  • HOUDINI_INTERCEPT_WITH_SCROLLLOCK

    If 1, scroll lock with trigger intercept mode. If unset or 0, scrollock will not have this special meaning. Prior to H20 scrolllock was always used for intercept mode.

  • HOUDINI_NODEDATA_ALPHABETICAL_SAVE

    If set to 1, this feature is enabled which will cause certain data items in a node to be saved in alphabetical order instead of their “natural order”. This is to minimize diffs when comparing files. At the moment this is limited to the channel list (.chn section) and the parm list (.parm section). This will only have an effect when saving a HIP file or HDA (or anything that saves a node’s definition to a stream). Existing files will not be automatically modified. The spare parm definition list (.spareparmdef section) isn’t affected since this would also change the parm interface. When one of these files are saved they will likely have a one-time cost of a large number of diffs with their previous version. From then on (as long as this setting is kept turned on) the order of the channels and parms won’t change if parms are added, removed or modified. If unset or set to 0, this feature is disabled. If this setting is disabled after having been enabled, then subsequent saves will revert to the old behavior. This may also have a one time cost of a large number of diffs when the file is next saved. The order for the channel list will likely remain in alphabetical order until the channel list s modified. However, the order for the parm list will change back to an apparent random order. Of course files which had not been saved with this feature turned on won’t be affected.

    By default this is disabled.

  • HOUDINI_UI_PARSE_VERBOSE

    For debugging native Houdini UI file purposes, this sets the verbosity level when parsing them. The default is to only output error messages (level 4). The current levels are a range from 0 to 5 inclusive, where lower levels display more messages.

  • HOUDINI_FFMPEG_VERBOSE

    Sets the log verbosity of FFmpeg-based processes. The default is to only output messages of level “Warning” or higher (level 4). The current levels are a range from 0 (Quiet) to 8 (Trace) inclusive, where higher levels display more messages.

  • HOUDINI_GROOM_RAYTRACE_PARTINGLINES

    Setting this to 0 reverts back to a previous parting line algorithm for grooming operators.

    Should you find any case where the old algorithm is more robust, please report to support.

  • HOUDINI_PROTOPATHS_IN_INSTANCE_SELECTIONS

    Setting this to 1 causes LOP point instance selection strings to use a new format that explicitly clarifies which specific primitive within the instance prototype was selected. For example, consider a point instancer at /instancer1 with a single prototype at /instancer1/Prototypes/proto1. This prim is an Xform with two Cube prim children, /instancer1/Prototypes/proto1/cube1 and /instancer1/Prototypes/proto1/cube2. Using the default value of 0 for this environment variable, and selecting the instance in the LOP viewport would result in a selection string /instancer1[0] regardless of which cube was selected, and both cubes would highlight in the viewport. With this variable set to 1, clicking on cube1 would set the selection string to /instancer1[0:/instancer1/Prototypes/proto1/cube1, and only the one cube in the instance would highlight in the viewport.

    This alternative instance selection path is required to disambiguate nested instance selections when the top level instance prototype has more than one point instancer child. This option is off by default because not all code paths in Houdini support this new instance selection string format. But this new format can be used for custom tooling, and in a future version of Houdini this new format will be fully supported and become the default.

  • HOUDINI_NEW_HOTKEY_SYSTEM

    Setting this to 1 switches Houdini to a new hotkey context and key event resolution system.

  • HOUDINI_DEFAULT_DOMELIGHT_TEXTURE

    When using “domelight only” preview lighting in Solaris, this environment variable controls which file (if any) to use as a texture on the dome.

  • HOUDINI_DEFAULT_ROP_RENDER_DELEGATE

    Specifies the internal name of the USD render delegate that should be used by default when putting down a new USD Render ROP. This control was previsouly available using the deprecated HOUDINI_DEFAULT_RENDER_DELEGATE environment variable.

  • HOUDINI_DEFAULT_CLONE_RENDER_DELEGATE

    Specifies the internal name of the USD render delegate that should be used by default when creating a Houdini Clone. This control was previsouly available using the deprecated HOUDINI_DEFAULT_RENDER_DELEGATE environment variable.

  • HOUDINI_DEFAULT_SCENEVIEWER_RENDER_DELEGATE

    Specifies the internal name of the USD render delegate that should be used by default when creating a new Scene Viewer pane.

  • HOUDINI_FORCE_SCENEVIEWER_RENDER_DELEGATE

    Specifies the internal name of the USD render delegate that should be used by default when creating a new Scene Viewer pane, or when configuring a Scene Viewer pane’s state stored in a hip file or desktop. This overrides the HOUDINI_DEFAULT_SCENEVIEWER_RENDER_DELEGATE value for new Scene Viewers. This variable can also be set using the -r <delegate> command line option when starting Houdini. The primary purpose of this option is to allow Houdini to be opened in a “safe” state where you can be assured that an expensive viewport render won’t start automatically when opening a file.

  • HOUDINI_DEFAULT_ASSET_NAMESPACE

    If this is set, the asset creation dialog uses it as the default namespace for new assets. See Creating digital assets for more information.

  • HOUDINI_ASSET_FILENAME_PATTERN

    If this is set, the asset creation dialog uses this filename pattern for the asset library path, and hides the option to choose a different filename pattern. This may be useful for studios to enforce a studio-wide file naming convention. See Creating digital assets for more information.

  • OFX_PLUGIN_PATH

    Allows you to use OpenFX plug-ins in your Copernicus network.

  • HOUDINI_DISABLE_OPENFX_DEFAULT_PATH

    If set, this turns off looking in the default platform-specific locations for OpenFX plug-ins (for example, C:\Program Files\Common Files\OFX\Plugins).

  • HOUDINI_CUSTOM_RECIPE_DIR

    Use this variable to define an absolute folder path for storing recipe assets. When HOUDINI_CUSTOM_RECIPE_DIR is defined, recipe dialogs create the custom file path $HOUDINI_CUSTOM_RECIPE_DIR/$HOUDINI_CUSTOM_RECIPE_LIBRARY to save recipe assets to this location. This variable is not created by default.

  • HOUDINI_CUSTOM_RECIPE_LIBRARY

    Defines a custom recipe library name (defaults to Recipes.hda). Houdini uses HOUDINI_CUSTOM_RECIPE_LIBRARY along with HOUDINI_CUSTOM_RECIPE_DIR for creating a custom recipe file path.

  • HOUDINI_MAX_SELECTION_REDRAW_TIME

    Specifies a time in seconds that the LOP scene viewer can spend drawing the selection highlight when interacting with viewport handles. If this time is exceeded, then the selection highlight stops drawing until the mouse interaction with the handle is completed. The default value of 0.0 means that the selection highlight is never drawn when interacting with viewport handles.

  • HOUDINI_HDA_SUPPRESS_OPTIONAL_FILES

    Setting this environment variable will prevent the creation of the optional timestamp files when unpacking an HDA to vcs friendly form. The modtimes and createtimes values these files store are non-essential to the HDA and the values will be set to there default.

Reference

User interface

  • Menus

    Explains each of the items in the main menus.

  • Viewers

    Viewer pane types.

  • Panes

    Documents the options in various panes.

  • Windows

    Documents the options in various user interface windows.

Programming

  • Expression functions

    Expression functions let you compute the value of parameters.

  • Expression cookbook

    Tips and tricks for writing expressions to accomplish various effects.

  • Python scripting

    How to script Houdini using Python and the Houdini Object Model.

  • VEX

    VEX is a high-performance expression language used in many places in Houdini, such as writing shaders.

  • HScript commands

    HScript is Houdini’s legacy scripting language.

  • hwebserver

    Functions and classes for running a web server inside a graphical or non-graphical Houdini session.

Command line

Guru level

Plugin installation

  • Houdini packages

    How to write and combine multiple environment variable definition files for different plug-ins, tools, and add-ons.

Houdini Engine