A Houdini SOP for drawing, painting and animating in Houdini. 

Blurring the lines between the two and three dimensional has always been fascinating to me. Having studied traditional 2D animation at university for a couple of years, the techniques learned with a pegbar and bulky wooden lightbox have often translated into even the most technical, unforgiving 3D tasks. 

Hpaint was developed as a real-time solution to bridge the gap between the highly fluid, organic process of drawn animation, and the extraordinary procedural workflow that Houdini is famous for.

Using a custom Python viewer state in combination with a Python/Vex stroke management system, Hpaint provides the familiarity of painting digitally in Photoshop, utilizing SideFX’ built in tablet functionality. But with each stroke being its’ own UVed geometry, strokes can be edited and rendered as any other 3D geometry would be.

Aaron Smith - 01/10/2021

KNIT - 100M

An algorithmic approach to building hyper-realistic knits in Houdini. 

With each new project, I find myself re-evaluating the traditional methods for common problems more and more often. 

With Knit - 100M I set out to create a knit solver that could break past the memory limits I encountered with my Weave toolkit, and evaluate organic, procedural growth on hundreds of millions of fibers in an art directable amount of time (Nobody wants to wait around for weeks to see the results of their work!)

Using an algorithm I had written, rewritten and incrementally improved upon over the course of a couple of months - the following video was generated in only 6 hours; But involves millions of parametric infections unrestricted by point count, position, or static pre-calculation per second.

Aaron Smith - 01/02/2021


A computer-vision approach to visualising images as embroidery.

I am continually more obsessed with neural networks and their application to images, and have been attempting to integrate them in some way to Houdini for several years now. Inspired by The Tapestry - BBC World Cup 2018, I sought to recreate the tactile feel of a cloth frame-to-animation pipeline on a modest budget.

This particular test comes from the third iteration of a Houdini toolkit I have written, integrating PyTorch and OpenCV to generate temporally-stable embroidery using an input sequence of images. Here, an old simpsons couch gag is upscaled given a learned directionality, position and machine embroidery technique to create a convincing image that would be incredibly costly to replicate using real-world means.

Aaron Smith - 15/07/2021


A Houdini asset for generating millions of braided curves in seconds.

When observing something as simple as a shoelace, it’s easy to dismiss how complex its’ construction could be; But at its core, the braided weave is an example of how beautiful and intricate the utilitarian designs that our lives revolve around truly are.

Weave was developed as a design experiment, exploring these complexities. Braids can be generated on lines or curves within seconds as each frame is pre-calculated using VEX and OpenCL.

When used in conjunction with its’ built-in toolkit for clumping, time warping and post-processing, effects that should take a studio months to R&D can be generated in near real-time. 

Aaron Smith - 06/11/2019