Master Controller Node
The master controller node is a special kind of script node that allows you to create visual widgets that you can display in the Camera view, and script to programmatically affect a character rig when manipulated by the user.
For information and examples on how to use the Master Controller node,
Connection
The Master Controller does not need to be connected to a node in order to work, unless it is scripted to affect nodes that are connected to it.
If a Master Controller is connected to a node, the node system it is connected to should ultimately end up connected to a Display node in order for the Master Controller to work.
If you configure the Master Controller's first (rightmost) input port to be a transformation (peg) input port, you can connect a peg to the Master Controller, and use this peg to move its widget around in the Camera view, allowing you to easily set the widget's default position in the scene.
Controls
The Master Controller can be scripted to display any one of the following kinds of controls in the Camera view:
Control | Appearance | Description |
---|---|---|
Slider | A slider that allows the user to slide a handle up or down. When manipulated, it provides a value between its minimum and maximum values. | |
2D Line Display | Displays a line going between two 2D Point widgets, make a "bone" type manipulator that can be moved by either end. | |
2D Point | A point that the user can freely drag around the stage. When manipulated, it provides its position. | |
3D Rotation |
A 3D sphere that the user can rotate in all directions. When manipulated, it provides an object with a rotation angle for each axis. |
|
X Rotation |
A circle that can be rotated around the x-axis. When manipulated, it provides a rotation angle. |
|
Y Rotation |
A circle that can be rotated around the y-axis. When manipulated, it provides a rotation angle. |
|
Z Rotation |
A circle that can be rotated around the z-axis. When manipulated, it provides a rotation angle. |
|
X Translation | An arrow that can be dragged along the x-axis. When manipulated, it provides an offset. | |
Y Translation | An arrow that can be dragged along the y-axis. When manipulated, it provides an offset. | |
Z Translation | An arrow that can be dragged along the z-axis. When manipulated, it provides an offset. |
Scripting Interface
To learn about the scripting interface used by the Master Controller node, refer to the Harmony Scripting Interface Reference.
Layer Properties
The Master Controller node is essentially a Script node with an extra layer of functionality in its scripting interface. Hence, its layer properties are very similar to that of the Script node. However, its most important tab is the UI Script tab. The script in this tab is executed when the layer is selected and the user clicks on the Show Control button in the Camera toolbar. This is where you can define which widget the node displays, and what happens when the user manipulates the widget.
Parameter | Description |
---|---|
Name | The name of the node as it appears in the Node View and the Timeline view. Each node must have a name that is unique to its containing group. |
Tabs | |
Attributes |
This tab allows you to set values for the attributes defined in the Specifications tab. |
Specifications |
This tab allows you to define the attributes as well as the input and output ports for the The
The
|
Softrender |
This tab allows you to write or link to a script that will be executed when rendering the node. NOTE Scripts in this tab are ignored by the Master Controller node. The Softrender tab is only executed by Script nodes.
|
Initialization |
This tab allows you to write or link to a script that will be executed when loading the scene. |
Cleanup |
This tab allows you to write or link to a script that will be executed when closing the scene. |
UI Script | This tab allows you to write or link to a script that will be executed when using the Show Control command while the node is selected. |
Extra Files |
This tab allows you to define folders or files from root directory of the scene that should be preserved when creating templates or saving the scene in a different location. Any asset, such as external scripts, user interface files, data files or images that the NOTES
|