The Parameter Wiring dialog allows you to define the relationships for Wire Parameters. In this dialog, you can create new one and two-way control relationships between object parameters, edit existing relationships, and create or edit expressions which define the parameter relationships.
Only parameters that can be animated can be wired. Sub-objects, such as vertices, must be animated before they can be wired.
Parameter wires can be used to establish connections from Manipulators and Custom Attributes to objects, materials, and modifiers.
Example: To use an expression with wire parameters:
A rubber-band dashed line now connects the box and the mouse cursor.
The position of the sphere and the length of the box are now wired.
Notice that as the sphere moves in the viewport, the length of the box changes. Using abs() ensures that the box never has a negative length.
To control several driven parameters from one driver parameter:
You can repeat this cycle to set up as many driven parameters as you want. The result is a “fan” of parameter wires, so that you can control all of the driven parameters at once as you change the driver parameter.
To create a chain of wired parameters:
You can repeat this cycle, continuing to alternate driven parameters to driver parameters as many times as you like. The result is a “daisy chain” of parameter wires, so that as you modify the original driver parameter, each driven parameter maintains a constant relationship with the next in a line of parameters.
To edit wired parameters between scene nodes:
If you create or inherit a scene containing wired parameters and want to edit a particular relationship, you can use Schematic View to find the relationship and open it in the Parameter Wiring dialog.
Schematic View opens showing the scene nodes and the Display floater.
Any wires between nodes appear as lines of the same color as the Param Wires button.
The wired relationship appears in a tooltip.
This opens the Parameter Wiring dialog with the wired parameters highlighted and the current settings active.
To edit wired parameters within a single scene node:
If parameters are wired within a scene node, such as an object's position to a parameter of a modifier applied to the object, the wiring might not be readily apparent in Schematic View. However, you can use additional Display options to expose the wiring.
Schematic View opens showing the scene nodes and the Display floater.
Nothing changes because the parameter wiring is internal to the object. Its internal structure needs to be expanded to see the wiring.
For Schematic View to show such a wire, it's necessary to turn on these Display floater switches, in the Entities group:
The following illustration depicts a link between an object's position and its radius:
The dialog presents two tree views that display the animatable parameters of all of the visible objects in the scene. The names of the currently selected objects appear at the top. The tree views display the objects in the scene and allow you to select and wire all of the animatable parameters of the objects in the scene and the scene itself.
The tree views are color-coded to show existing wiring. A parameter with a wire controller assigned to it (either as the member of a two-way pair or as the driven parameter in a one-way wire) displays in red. When a wire-controlled parameter is selected, all of the parameters wired directly to it are displayed in green text in the other Tree View. In either case, if the parameter is inside a track that is not expanded, the enclosing track will display in red or green, so you can expand the tracks to find the wires.
The buttons above the tree views are:
In Track View, the animation subcontroller appears as a nested track inside the driver parameter’s track. Its values directly drive and match the driver parameter values. If the subcontroller is keyframable (which is the default when a two-way wiring is first established), you can keyframe it by adjusting either of the wired parameters. This means that if you keyframe the wired pair by adjusting the non-driver parameter, the values keyframed into the animation subcontroller are derived from the driver parameter transfer expression. Since the wired pair can be animated through either parameter, the choice of driver parameter is essentially just a convention.
Between the tree views are three direction-control buttons. You can choose only one of these at a time. These buttons determine the direction of control, either one-way or two-way:
The Connect/Update button changes its label depending on whether clicking it would add a new wire to previously unwired parameters (Connect) or change an existing wire’s expressions or direction (Update). Changes to existing wires are only applied when you click Update.
The Disconnect button is enabled when you’ve selected parameters with an existing wire between them. It will remove the wire controller(s) and replace them with the driver parameter’s animation track (if two-way) or with default controllers (if one-way).
Underneath the parameter trees are the transfer expression windows. These expressions determine how a changes to each parameter affects the other. Usually one expression is the inverse of the other. (You can enter expressions for the two parameters that are not inverses of each other, but this is discouraged because then the result of the wiring will be different depending on which parameter you change first.)
When you first wire the parameters, the default expressions are simple 1-to-1 links between the parameters. You can edit the expressions in these windows. A valid expression yields a result of the correct type for its parameter. For example, if you link a parameter such as height (which contains a float value) to a parameter such as position (which contains a point3 value), your expressions must include conversions that produce the same output value type.
For more information on expression syntax, see the topic “Script Controllers” in the MAXScript Help.
For one-way wires, the expression window for the controlling parameter is unavailable, since there is no Wire controller assigned to it.
For two-way wiring, both transfer expression windows are enabled.