User guide

121
The main node, and any other nodes used to implement the custom Importomatic module, are placed in a Group
node. This ensures a clean and clutter-free internal structure of the Importomatic node, with each module
encapsulated using a single node - all of which connect to the Merge node. It's not possible to create nodes
between the Merge node and the group's out port (a module should not affect the outcome of other modules
anyway) because disconnecting the out port has implications that hinder any further processing.
Creating a Tree Structure
Here we look at the concepts discussed in Custom Hierarchy Structures and Extensions in more detail, using the
ScenegraphXML module as a reference. ScenegraphXML loads a scenegraph from an XML file using the
ScenegraphXml_In node, then applies modifiers and look files, which can either be read from the XML file, or through
manual interaction in the Importomatic. If applied through manual interaction, modifiers and look files are called
overrides.
The first step involves parsing the XML file to extract the geometric data in terms of assemblies, as well as any
assigned modifiers/look files. This information is written as parameters on the Group node, which encapsulates the
module. This automatically creates the top node ScenegraphXml of type ScenegraphXmlTreeRoot. See Custom
Hierarchy Structures and Extensions for more information.
The second step uses these node parameters to generate the Node Graph and hierarchy within the Importomatic.
The ScenegraphXmlTreeRoot is instantiated and the traversing process begins where its method getChildren is
called, which instantiates the ScenegraphXmlRootHandler.
The root handler contains every other handler by going through the Group node's metadata, instantiating an
AssetTreeHandler for every asset, which subsequently calls the getChildren function that goes on to instantiate any
sub-asset/modifier/look file recursively. The images below show an example generated hierarchy.
16 CREATING NEW IMPORTOMATIC MODULES | CUSTOM HIERARCHY STRUCTURES AND EXTENSIONS