Chapter 53: OpenFX
To expand your compositing possibilities, you can use OpenFX plugins directly in Harmony.
OpenFX is an open standard used to create visual effects plugins. These plugins can be used in any application that supports the standard. This means that banks of visual effect plugins can be developed by programmers and shared with various platform users. Harmony is one of these platforms.
To learn more about OpenFX, refer to:
To learn more about the main OpenFX plugin providers, refer to:
To demonstrate this feature, the Sapphire package from GenArts® will be used. You can download the Sapphire library at:
Once you have purchased or downloaded an OpenFX package, you need to launch the executable file to install it. All OpenFX plugins install in a centralized location that all applications can read from. You will not need to do anything in Harmony. They will appear automatically in the Node Library view once the package of your choice is installed.
Here is the centralized installation path:
|•||Windows: C:\Program Files (x86)\Common Files\OFX\Plugins|
|•||Mac OS X: /Library/OFX/Plugins|
Harmony has the ability to generate normal maps. The main usage is to create light shading effects on flat 2D drawings
A normal map can be used to create other effects. If you're are working with an OpenFX plugin or other plugin requiring a normal map, you can use the Normal Map Converter node to translate the Harmony normal map to a format supported by your plugin. The Normal Map Converter node has been optimized to work with GenArts® plugins, but you also have the ability to use it on custom plugins.
The Normal Map Converter uses the following formula per channel:
- Download the OpenFX package you want to install.
- Quit Harmony.
- Launch the OpenFX package installer and follow the installation instructions.
- Launch Harmony.
- In the Node Library view, in the Categories section, select the category matching the package's name.
All effects included in the package are now available to use in Harmony.
All OpenFX plugins can be customized by adjusting their parameters. Settings are organized by category and some of them can be expanded and collapsed for clarity. Parameters can also be animated over time
Some effects also have visual controls to set the position or angle. If you want to adjust the controls for your effect, you must do so in OpenGL mode. To see the effect in OpenGL mode, you need to connect a Render Preview node to your effect.
- From the Node Library view, select an effect plugin and drag it to the Node view.
- Connect your drawing nodes or other required nodes to the effect plugin.
- In the Camera view, enable the Render mode to see the final rendered effect.
- In the Node view, click the effect node's yellow square to open the Layer Properties window and adjust its parameters.
In the Layer Properties window, you can expand some parameter sections to see many more controls.
- Adjust the effect's visual control in OpenGL mode by dragging a Render Preview node from the Node Library view to the Node view. Connect it between the plugin and the Composite nodes.
- In the Camera view, enable the OpenGL mode to see the rendered effect in OpenGL.
- To display the controls, in the Node view, select the plugin effect node and do one of the following:
|‣||In the Camera toolbar, click the Show Controlbutton.|
|‣||From the top menu, select View > Show > Control.|
|‣||Press Shift + F11 (Windows/Linux) or ⌘ + F11 (Mac OS X).|
The controls appear.
- In the Tools toolbar, select the Transform tool or press Shift + T.
- In the Camera view, adjust the controls.
- In the Node Library view, go to the Shading category and select the Normal Map Converter node.
- Drag it to the Node view.
- Connect the Normal Map Converter node between the Normal Map node and your custom plugin node.
- Select the Normal Map Converter node.
- In the Layer Properties view, adjust the node's properties.
|Conversion Type||By default, the conversion type is set to Genarts. If you work with a different manufacturer and want to adjust the parameters, set the conversion type to Custom.|
|Offset||Offsets the original position of the vector. You need to read the plugin documentation to know the offset you need to use. You must use the same offset value as the manufacturer is using. By default the offset is set to 0.|
|Length||The Normal Map Converter normalizes Harmony vectors to 1. By default the length value is set to 1. If your plugin requires shorter or longer vectors, enter a value smaller or greater than 1. It will multiply the vector length.|
|Invert Red||Inverts the red value (x). If your value is 125, the invert setting will transform it to -125.|
|Invert Green||Inverts the green value (y). If your value is 125, the invert setting will transform it to -125.|
|Invert Blue||Inverts the blue value (z). If your value is 125, the invert setting will transform it to -125.|
- If the plugin you are using stores the X,Y and Z coordinates in different channels, you can use the Channel-Swap node to reassign the colour channels
—see Channel Swap.