Houdini 101

the secret language of Houdini


  • Houdini is a procedural package
  • It may be used for procedural
    • pyroFX
    • fluids
    • characters
    • procedural modelling
    • destruction
    • particles
    • lighting
    • rendering
    • gamedev

“Voppity Dop Sop Chop”

  • the Houdini language

NODES

  • everything you do in Houdini creates a node
  • these nodes are connected to the project network
  • the network of nodes gives Houdini its procedural nature
  • when the software was first created, these nodes were called operators
    • they operate on whatever comes into it
    • outputs result of operation
NODE TYPES:
  • SURFACE: for geometry
    • “SOPS”: surface operator
  • CHANNEL: for motion
    • “COPS”: channel operator
  • DYNAMIC: for simulation
    • “DOPS”: dynamic operator
  • VEX: for shader building among other things
    • “VOPS”: vex operator
  • COMPOSITING: for working with 2D images
    • “COPS”: compositing operator
  • RENDER: for outputting through internal and external renderers, or simulation and geometry outputs
    • “ROPS”: render operator
  • each of these nodes has a unique flavor and working
SOPS | SURFACE Operators
  • this operator is used to manipulate
    • geometry
    • volumes
  • pass attributes through them
  • plays a huge role in handling VFX
    • it is handling at this level to ensure the simulation happens correctly
CHOPS | CHANNEL Operators
  • procedural motion FX
  • kinematic solvers
  • timing
  • sound
  • constraints
DOPS | DYNAMIC Operators
  • solvers
  • forces
  • collisions
  • particle nodes (previously POPS)
    • fluids
    • rigid bodies
    • particles
    • hair, fur
  • all dynamic parameters are controlled in the DOPS network
  • some new nodes gets added to the SOPS network, when DOPS nodes are added to the DOPS network
    • newly relevant nodes get connected to existing nodes
VOPS | VEX Operators
  • great for shader building
  • geometry
  • composting
  • VFX
  • wrangle nodes
  • many VEX operators are layered and interconnected to provide materials
  • in the more recent versions, material behavior parameters may be changed directly at the material level
ROPS | RENDER Operators
  • Mantra - the builtin renderer for Houdini
  • 3rd party renderers
  • HQUEUE
  • Geometry, Channels, ,Comps, etc
  • different objects in the same scene may be rendered by different engines
COPS | COMPOSITING Operators
  • nodes used for slap comps
  • also good for lighters before they go to the next stage
  • color
  • masks
  • effects

PARAMETERS | CHANNELS | ATTRIBUTES

PARAMETERS
  • parameter is that entity whose value may be changed in the procedural workflow
    • usually in the node panel
    • they are static values after they are changed
      • not automated
    • they are NOT the same as attributes

CHANNELS

  • a parameter that has been keyframed (automated) is a channel
  • a parameter maybe tricked into being a channel due to technicality
    • but a channel is only after a parameter has been keyframed

ATTRIBUTES

  • values assigned to points, primitives and other geometry elements
  • this the the only context for attributes in Houdini

VEX

  • VEX is a scripting language
  • Vector EXpression language
  • it is multi-threaded
  • used a lot in the Houdini experience
great VEX tutorial:
  • ENTAGMA = Creating Geometry with VEX
  • good place to start learning VEX

VEX scripts can be put in Wrangle Node

  • but full-on scripting is beneficial for larger production scale projects
    • for efficiency
    • and accuracy

REFERENCES