When a plug-in is currently selected in the plug-in editing window, clicking the "Parameters" tab button displays the following options:

11


The listing shows all the parameters for the plug-in, according to the order in which they appear inside the parameter inspector UI of the FxPlug host. Rearranging or renaming the parameters via this interface will cause the parameters to appear in the new order (and with any new names) the next time you launch the FxPlug host.

The round indicator that appears next to each parameter tells you whether the parameter is ready to be used by the plug-in. The picture above shows all parameters with a "green light". The indicator may also appear in yellow, when the parameter is not fully mapped, and in red, when the parameter cannot be mapped because no compatible Quartz composition input ports could be found.

FxFactory plug-ins support a wide variety of parameters. New parameters may be created by the button labeled with a plus sign, below the parameter list:

12

The second button, labeled with a minus sign, lets you remove any currently selected parameters. The third button has a special purpose: when two slider parameters (e.g. "Center (X)" and "Center (Y)") are selected, clicking this button will cause the two slider parameters to merge into a single point parameter:

Picture 5

Picture 6


When the plug-in requires the user to specify a 2D location on the canvas, point parameters are preferrable to slider parameters since they provide an on-screen control that is best suited to this purpose.

Parameter Setup

When a parameter is currently selected in the list, a number of general options are available.



  • The Name text box lets you specify a name for the parameter. This value may be empty, if you do not with the parameter to be labeled in the FxPlug host's inspector UI.
  • The Properties popup button lets you specify a number of options:

Properties

  • The ID option (which cannot be changed or edited) represents an internal value used by all hosts to uniquely identify the parameter. This ID is also used by FxFactory to save and retrieve parameter values from presets.
  • The Animatable via keyframes option lets you decide whether the user should be allowed to animate the parameter via keyframes. This option is available only if the parameter expresses values that may be animated.
  • The Display in parameter inspector option lets you control whether you want the parameter to appear at all in the FxPlug host's inspector UI. When this option is enabled, you may also enable the ...and in Motion's HUD option to have the parameter be displayed in the Motion's overlay parameter UI. Only certain parameter types, such as sliders, angles and popup menus, may be displayed in the Motion dashboard.
  • The Save value with project option lets you decide whether the value of the parameter is saved along with the Motion, Final Cut Pro or Final Cut Express project where the plug-in is used. If a parameter value is not saved along with the project, it will default to its original value every time the project is re-opened.
  • The Save value to presets options lets you decide whether the value of the parameter is saved to presets files created via a Presets parameter.


Dynamic UI


This feature allows you to hide (or disable) certain parameters if they have no effect, given the current state of the plug-in. Use context-sensitive parameter UI as a way of improving user experience.

14

FxFactory makes the task of building a context-sensitive parameter UI extremely simple. Context-sensitive parameters are created by establishing dependencies of one parameter on another. You can create dependencies from any supported parameter (or parameter group) on a checkbox or popup menu parameter. For instance, you may decide that a given slider only has an effect if the value of another checkbox is on; you may decide that a given parameter group should only be visible if the third item of a popup menu parameter is selected, and so on.

Please note that context-sensitive UI requires support in the host as well. Motion 3.0 and 3.0.1 support only dynamic enabling/disabling of parameters. Final Cut Pro 6.0.1 supports both enabling/disabling and showing/hiding parameters dynamically. Current versions of Final Cut Pro, Motion and After Effects supports both types of dynamic UI. It is advisable to build your plug-in UI so that it will remain usable no matter what the underlying host is capable of.

Establishing Parameter Mappings
The parameters you create in FxFactory may require one or more mappings to published input or output ports in the Quartz composition. Most parameters (such as sliders, angles) only require one mapping. Point parameters require two mappings, since they feed both an X and a Y location to the Quartz composition; Group and Banner image parameters require no mappings; Image Well parameters have one mandatory and one optional mapping, and so on.

Depending on the current parameter type and mapping, the last section of the parameter editing interface will vary:


More Info on Input Mappings

Many options in FxFactory require you to map a certain value or parameter to one of the input ports published by the Quartz composition. If this mapping is not established, the plug-in will not function correctly inside the FxPlug host. Once a Quartz composition published input has been mapped, it may not be used for any other purpose by the plug-in. The "Unmap" button lets you undo this mapping to free up the composition input, which may then be used for other purposes.