Houdini 20.0 Basics

Environment variables

On this page


Houdini uses environment variables for various purposes, such as defining paths (sets of directories in which Houdini looks for certain types of files), commonly used directories (such as $HFS, the install location of Houdini) and for obscure or highly technical settings.

See the list of environment variables in Houdini.

Browsing environment variables

The hconfig utility displays the meaning or current value of all Houdini-related environment variables.

For hconfig to be available on the command line, you should set up a Houdini shell environment.


Choose Start ▸ All Programs ▸ Side Effects Software ▸ Houdini X.X.XXX ▸ Command Line Tools.


Open /Applications/Houdini/HoudiniX.X.XXX/Utilities and double-click Houdini Terminal.


cd to the Houdini install directory and type source houdini_setup or source houdini_setup.bash depending on your shell.

To...Do this

Get help on using hconfig

hconfig -h

Print the current values of common Houdini environment variables


Print the current values of all Houdini environment variables

hconfig -a

Print the help for a certain variable

hconfig -h VAR_NAME

For example:


Print the help for all Houdini environment variables

hconfig -H

Setting environment variables

Houdini picks up the system’s environment variables (such as $HOME) as well as the environment variables of the shell from which it was started, on platforms that support those concepts.

Each user’s home Houdini directory can contain a houdini.env file you can use to specify environment variables. You may also use the package mechanism for setting environment variables.







(If the houdini.env file doesn’t already exist, Houdini creates a template houdini.env file with helpful comments when you run Houdini.)

The file should contain one environment variable definition per line. For example:

# Assign BAR to FOO

# Spaces are optional

# Quote values that contain spaces

# Environment variables on the right side
# are expanded
FOO = $HOME/some/path

# Escape $ to avoid expansion of variables
FOO = \$HOME/some/path

# To unset a default...


On the Mac, when you launch Houdini from the dock or by double-clicking its icon, it inherits a very minimal environment, and it’s difficult to add variables to it. Use the houdini.env file (see above) to configure environment variables on the Mac.

(If you start Houdini by typing houdini in a Houdini Shell.terminal window, Houdini will inherit the shell’s environment.)


On Windows, right-click My Computer and choose Properties, click the Advanced tab, then click Environment Variables.

You can also use the set name=value command in the command shell, for example set UT_INTERRUPT_THRESH=50 sets the Interrupt Cook dialog delay to 5 seconds for any instance of Houdini subsequently started from that shell.


On Linux, the procedure for setting environment variables varies from shell to shell. Check your shell’s man page for details.

  • In bash use export name=value .

  • In csh and tcsh, use setenv name value .

For example export UT_INTERRUPT_THRESH=50 sets the Interrupt Cook dialog delay to 5 seconds for any instance of Houdini subsequently started from that shell.

Special characters in path variables


Typically expands to the directories on the HOUDINI_PATH. So, if the HOUDINI_PATH is…


… then the value "@/vex" would expand to…



Equivalent to $HIP: the path of the directory containing the current scene file.


The “default” path for the given variable. For example, to add a directory "/mypath" to the default path for a variable, use "/mypath;&;". This will search "/mypath" path first, then the directories on the default path.


For VEX-related variables, expands to the shader type (e.g. Surface, Displacement, Sop, etc.). For example, if HOUDINI_VEX_PATH is "$HOME/vex/^", when loading Surface shaders it will expand to "$HOME/vex/Surface".


Getting started

Next steps