Houdini

Doing away with Houdini.env

This is a sort of sequel to the previous post I made about handling the Houdini.env file, and about configuring environments in general. Houdini 17.5 introduced the concept of “packages”, which are little JSON files (JSON meaning JavaScript Object Notation, filling a similar role as XML or YAML) that define Read more…

Uncategorized

An Idiot’s Guide to ACES

I’ve been putting off working in ACES for years now, because almost every explanation of the system I’ve tried to read online has been either extraordinarily technical and long-winded, or read like a sales pitch with no useful information about implementation. It takes a certain amount of training and understanding Read more…

Houdini

Dealing with houdini.env

I continually run into confusion from Houdini users about how the Houdini.env is supposed to work, what the syntax is supposed to be, or even what it does in the first place. It’s easy if you’ve been trapped in pipeline land (like me) to think that environment configuration is even Read more…

Uncategorized

MOPs @ EUE 2019

SideFX Software was generous enough to ship me out to the Netherlands last week to meet my partner-in-MOPs, the inimitable Moritz Schwind, and present together a little slide show about motion graphics, Houdini, and prison hooch at End User Event 2019! The technical stuff about MOPs starts about halfway through Read more…

Maya

Maya: where everything is a string.

Here’s a rare Maya post in 2019! I hate Maya, but sometimes it’s hard to avoid. One of the most irritating things about writing scripts for Maya is that the Python commands are totally un-Pythonic… meaning, there’s no sense of “objects” that have intrinsic properties and functions (or in Python Read more…

Houdini

Raytracing AOVs in Mantra

I meant to write a post about this a long while ago, but couldn’t be arsed to do it, apparently. Sorry! Something that artists take for granted in render engines like VRay and Arnold is the ability to reflect and refract AOVs / render elements / render passes, depending on Read more…

Houdini

VEXpressions in your HDAs, using Python!

Update: Imre Tuske from Weta pointed out that there’s a simpler method… it turns out that you can force expressions to evaluate inside a Wrangle by wrapping them up in backticks. So if you have a channel called “do_vexpressions” to enable or disable VEXpressions, and another channel called “vexpression” that Read more…