Oink

OFX plugins

Hosting OpenFX plugins: plugin folders, using plugin nodes.

raw .md

Oink hosts OpenFX (OFX) image plugins, the plugin standard used by Nuke, Resolve, Natron and Flame. Plugins are native code, so they never run inside Oink itself: a separate helper process loads them. If a plugin crashes, only that helper stops; the next render starts a new one.

Where plugins are found

Plugin folders are searched in this order; the first folder that has a plugin (same id and major version) wins:

  1. every folder in the OFX_PLUGIN_PATH environment variable (separated by : on Linux and macOS, ; on Windows);
  2. the plugin_paths list in ~/.config/opencomp/ofx.json (the OPENCOMP_CONFIG_DIR environment variable changes that folder);
  3. ~/.cache/opencomp/ofx/plugins (the test plugins that tools/ofx/build.sh builds);
  4. the system folder /usr/OFX/Plugins (Windows: C:\Program Files\Common Files\OFX\Plugins).

Inside the Flatpak build the host system's folders are visible under /run/host, so /run/host/usr/OFX/Plugins and /run/host/usr/local are searched as well. After installing plugins, restart the app.

Using a plugin

Each installed plugin becomes a node. Find them on the OFX button of the left node toolbar (one submenu per plugin group) or with Tab, under OFX/<group> (for example OFX/Color). Plugin knobs appear on the node panel like any other knob; plugin push buttons open the plugin's own window.

Plugins run without access to your screen during renders, so a plugin cannot pop up a licence or settings dialog in the middle of a render. In .nk files an installed plugin reads and writes Nuke's OFX class name (for example OFXnet.sf.openfx.invert_v2); a plugin that is not installed imports as an Unsupported node and is written back unchanged.

On this page