Events Architecture¶
The core design in this fork of Shotgun Houdini engine are the use of Houdini Events to setup and tear-down Shotgun parameters.
Houdini triggers the Python scripts in
houdini/scripts/*.py
.Calls relevant methods in
NodeHandlerBase
Methods are extended by sub-class to handle more and more specific setups
This allows for any node types to have Shotgun integration, through registering a node handler hook sub-class for that specific node type.
These Houdini Events have been available since at least Houdini 16.0.
Entry points¶
These methods are the main triggers to creating Shotgun parameters or reloading them upon opening an existing scene respectively:
on_created()
, fromOnCreated
Houdini Eventson_loaded()
, fromOnLoaded
Houdini Events
The on_loaded()
is more involved as it handles:
Updating Shotgun parameters upon engine version upgrade
When the node is using Shotgun and currently in a GUI session, re-calculate file path and register for individual node events callbacks
The update feature is also very powerful and opens up possibilities for new/existing node types to be integrated on a per-parameter basis, per Houdini version as necessary.
ImportNodeHandler.on_loaded
and any hooks sub-classing it will, in addition,
re-calculate the file path when not currently in a GUI session.
This enables the possibility to keep re-running a template Houdini scene on the farm that can pull in the latest input file versions upon render/process e.g. scheduled, daily, asset turntable checkers.