Houdini FX

A terrain with a shape of Mandelbrot set created in Houdini.

Houdini is a 3D animation software by SideFX that is broadly used in filming industry. Its built-in shader language (VEX), geometric data structures, and its integration with Python (where one can call numerical linear algebra library such as SciPy) make it a powerful tool for scientific computing and geometry processing. Moreover Houdini comes with industry standard renderer allowing stunning visualization. Its free apprentice license if fully functional, with only a few limitations in the resolution of rendering preventing commercial uses. Houdini has become a frequently used software for not only research demonstration, but also for teaching and generating illustrations for lectures and talks.

Lecture Note

Getting Started

To get started, first we recommend rummaging around the SideFX website and searching for tutorials on YouTube.

We also recommend that you work through some of the tutorials on the Houdini Tech Blog, a course blog for "Visualization in Mathematics" in TU Berlin, where I partially contributed a few materials. In particular you should work through all the tutorials in the "Introduction" category. There are more tutorials on that site and if you feel inspired check them out. All come with Houdini files to allow you to load completed tutorials if you wish.

Our lecture note listed above teaches you how to create simple geometry inside Houdini using the VEX language; basic scene setup with simple lighting and camera as well as manipulating surface appearance for rendering.

The complete documentation is also available on the SideFX website.

A note on installing Houdini (and SciPy)

You can instal the "Apprentice" version of Houdini on your own machine. Carefully check the system requirements before installing.

From our experience of installing Houdini on personal machines: if you have a

  • Windows: upon system requirements listed by Houdini, there seems to be no problem.
  • Linux: upon system requirements, there seems to be no problem.
  • Mac OSX: Houdini 16 doesn't seem to have issues. For earlier versions there was an issue with integrated graphics hardware.

For numerical linear algebra, we import the SciPy library and write Python codes in Houdini. If you also want to do so while running Houdini on your own machine, you want to make sure you have SciPy. If your machine is a

  • Linux: install SciPy from http://www.scipy.org/install.html. In particular it is recommended to install the Anaconda pack version 2.7 (which comes with SciPy). On Linux, Houdini's internal Python will read the Python library installed on your machine.
  • MacOSX: You don’t need to do anything. Mac already has SciPy.
  • Windows: Houdini on Windows installs its own Python inside the Houdini folder in Program Files. So the standardly installed Python packages on your machine are not visible by Python. Here is a simple trick. Download and install the Python from the Anaconda pack version 2.7 (which comes with SciPy). Go to the Houdini folder in Program Files; inside the Houdini folder there is a "python27" folder. Replace (perhaps with a backup) Houdini's python27 folder by the Python folder installed from Anaconda, and rename it to "python27". After that your Houdini is able to use SciPy.