Houdini Tutorials Tailored for Mathematicians.

This website is here to help you to get started with Houdini in order to complete the Mathematical Visualization course at the Technical University of Berlin. The aim is to enable you to run your own geometry related algorithms while taking advantage of Houdini’s excellent visual graphics while avoiding to dig deep into the theory behind it.

For the course we suggest to read as much as possible of the tutorials first as this will greatly reduce the time it takes to complete the tasks given to you.

Take a look at the following videos to see what is possible:
Schrödinger’s Smoke (SIGGRAPH 2016)
Schrödinger’s Smoke | Two Minute Papers
Houdini files of Schrödinger’s smoke in the source tab on this site

bunny smash.gif
Smashing a teapot against a bunny made from Schrödinger’s smoke. This should be your leading motivation throughout these tutorials.

Feedback Notice:

Please send in feedback to padilla@math.tu-berlin.de for us to clear up unclear statements, spelling mistakes, changes in Houdini or any form of mistakes.


You can download the apprentice version of Houdini @ www.sidefx.com/products/houdini-apprentice/ after (free) registration on their website.

We start to work with Houdini 15.5.673 in this tutorial and then switched to Houdini 16.0.504.20 once it was released. Most changes are not noticeable or just graphically in the nodes so it is safe to follow these tutorials with the newest Houdini version.

Guided Houdini Files

file Banner.pngEvery tutorial comes with it’s own executable Houdini files that shows the implementation in action of everything that is covered inside the respective lesson. Click here to view and download the entire folders related to each lesson. Downloading the entire folder is necessary for later tutorials to preserve the working directory references to textures, models and code.


Starting Houdini
old MacBook fix, Nvidea control panel fix.

Basics about the Houdini Nodes and Help
Foundations about Houdini’s structure. How to help yourself. Also tips how to keep your projects neat and clean using comments, sticky notes and network boxes.

Visualizing Discrete Geometry with Houdini I
First solids and manipulations. Setting normals and translations.

Rendering and Working with Cameras
Camera creation and rendering. Dealing with transparency of the rendered image.

Visualizing Discrete Geometry with Houdini II
Using wire frames and spheres.

Simple Ambient Scenes
Materials and basic lights for nice rendering.

Scenes with White Background
Render tricks for neater images in papers.

Creating Geometry From Scratch
VEX code geometry, creating node parameters to actively change.

Basics of Geometry Nodes
Loading in geometry and basic manipulations (scaling, rotating, translating).


Implicit Surfaces
Creation of iso-surfaces by functions and volume nodes.

Animation Basics
Using frame count $F on node parameters such as transformations.

Parameter and Variable Handling
Node Parameters, Global Variables and Attributes overview and use in channels. Organizing global variables.

Simple Curves
losed and open curves creation and manipulation.

Animation: Motion Inside VEX or Python code.
Passing variables such as $F to VEX code and using @Time, @Frame in VEX or in python.

Geometry Manipulation Example: Torus
Introduction to geometry editing tools such as blast and polybridge.

Chain Curve Example
Example of the usage of attributes of points to create a metal chain along a curve.

Non local Geometry Operations
Important lessons to perform computations involving edges, triangles and the whole geometry rather than just individual parts. Also for volume blurring with introduction to begin-end blocks.


Installing and Using Scipy in Houdini
Guided example for windows install using the scipy from the anaconda distribution.

How to run python code with examples and attribute handling. We will also use python to create an expensive looking teapot.

Solver Nodes
An example for frame by frame iterative computations.

Advection in Fields
2D volumes, many attribute handling, Fourier transforms, gradient computation, particle flow advection all in one guided example project.

Running Custom Code in Houdini
How to separate code into external files to import into nodes. We also explain how to handle multiple outputs of distinct types in one function call and test everything with an example of gradient computations.

Exporting a Video
Matra render node and options, exporting animation to video file.

Textures and Materials
Rendering soap bubbles and using texture and normal and bump maps guided example while showing of neat tricks to give your images the edge.

Laplace Operator Python example
An extensive example that will show you how to understand Houdini’s geometry structure well enough to build sparse matrices. Here we create minimal surfaces.

Using Houdini Digital Assets
Creation of reusable and synchronized Houdini networks. Exporting, importing and editing assets.

Storing and Reusing Computed Data
Directing simulation states into separate files and re-importing them frame by frame. Separation of computation tasks.


Schrödinger’s smoke inside Houdini. This and the cover image courtesy to Chern et. al.
This is an expensive looking teapot. You want it, and these tutorials will show you how to make it.
example crowd.gif
This is an example Houdini project taken from their help page (only accessible inside the Houdini locally installed help pages, not the web version).
Print Friendly