Switching to Oink
What carries over from other compositors, what is different, and what is not built yet.
Oink uses the node names, knob names, defaults, keyboard shortcuts and layout compositors already know, and it reads and writes .nk scripts.
What carries over
- Layout. The Compositing workspace: Viewer top left, Node Graph bottom left, Properties on the right, node toolbar on the far left, grouped by category (Image, Draw, Time, Channel, Color, Filter, Keyer, Merge, Transform, 3D, Deep, …).
- Keys. The standard shortcut table, and a key goes to the panel under the mouse. Tab search, R/W/G/B/M/T/C/K/O node keys, 1–9 viewer inputs, D disable, Y splay, Ctrl+G group, F5 render, J/K/L playback. See Keyboard shortcuts for exactly which keys work.
- Nodes and knobs. Node classes and knob names match .nk scripts (Grade's
blackpoint,whitepoint,multiply,gamma; the standardchannels,mask,(un)premult byandmixknobs on colour and filter nodes). Where our internal name differs, the .nk mapping translates it (Gradewhiteis ourgain); each node page lists the Nuke knob next to ours. - Maths. Merge operations follow the formulas in Foundry's Merge reference; Grade uses the standard lift / gain / gamma formula. Everything is 32-bit float, scene-linear and unclamped until the display.
- Coordinates. Pixels, origin bottom left, y up. Bounding boxes, formats and data windows work the usual way (see Bounding box).
- Scripts.
.nkfiles open, import and export, including Groups, gizmos, user knobs, expressions and Tcl. See .nk import and export. - Python. A
nukemodule with the familiar API,menu.py/init.pyon the plugin path, and a Script Editor. See Python. - BlinkScript and OFX. Blink kernels run on the GPU; OpenFX plugins load as nodes. See BlinkScript and OFX.
What is different
| Elsewhere | Oink |
|---|---|
comps are .nk | comps are .oink (plain-text JSON); .nk is for exchange (File › Open / Import / Export Nuke Script) |
| Qt interface | a web-based interface; Python panels (nukescripts.PythonPanel) dock inside the app, while PySide tools open as floating windows from a separate Qt helper (see Python) |
| Viewer process / input process | the Viewer applies an OCIO display and view chosen in the Viewer header; you can name an input process node in the Viewer settings and switch it on with the IP button (Alt+P) |
| NukeX / Studio licences | one app; CameraTracker, LensDistortion, Deep, the AI nodes and 3D are all included. The editorial side (timeline, conform, review) is the separate Oink Review app |
| CopyCat, Smart Vector and similar | the AIR group: Train, AIVectorGenerator, AIRoto and more, running local open models (see AI tools) |
| — | extra renderers in 3D: CyclesRender (built in, no Blender needed), EEVEERender (optional Blender bridge), HydraRender; Cycles, Karma and Storm also render live inside the 3D Viewer (see 3D) |
| 3D control type default: Nuke | default: Maya (Alt+left tumbles). Switch to the Nuke, Houdini, Lightwave or Modo scheme in Preferences > Panels > Viewer Handles |
| Blender not involved | no Blender needed; .blend files, EEVEE and a few Cycles passes work when you add it (see Engines) |
Not built yet
Some features are missing. Their keys and menu items are still there but show "Not available yet" in the status bar. Among them: paint strokes in RotoPaint (its Roto shapes work), saving and deleting custom workspaces, Select Similar, Capture and monitor out, and a few Roto tool modes. Nuke nodes with no equivalent import as Unsupported placeholders and are written back unchanged.
Built since earlier versions: Project Settings (S) and Preferences, Precomp, clones, StickyNote, Flipbook, proxy mode, and per-view knob values for scripts with several views.
Where to look up a node by its .nk class
The node map lists every .nk node class that imports as a node here.