Nuke plugin for generating, editing, rasterizing, and visualizing Signed Distance Fields (SDFs) from alpha masks. Uses GPU-accelerated BlinkScript kernels for real-time performance.
SDF Nodes
First submitted: 20 June 2026
Author: dshot92
Compatible Nuke versions: 14.0 or later
Compatibility: Source
SDF Nodes
A Nuke plugin for generating, editing, rasterizing, and visualizing Signed Distance Fields (SDFs) from alpha masks. Uses GPU-accelerated BlinkScript kernels for real-time performance.

Nodes
Node | Description |
|---|---|
SDF_Generate | Generates an exact SDF from an input alpha channel. Uses a coarse-to-fine search pattern to compute the true Euclidean distance to the nearest boundary for every pixel. |
SDF_Edit | Applies per-pixel mathematical operations on SDF values. Supports Add, Subtract, Multiply, Divide, Modulo, Sine, Cosine, Tangent, Absolute, Negate, Square, and Square Root. |
SDF_Rasterize | Converts an SDF back into a binary mask with Greater, Less, and Equal comparison modes, configurable threshold, epsilon, and smooth falloff. |
SDF_Visualize | Renders SDF data with customizable inside/outside colors, line color for the zero-crossing, stripe intervals, range scale, and line width. |
Installation
Copy the `SDF_Nodes` directory to your Nuke plugin path, usually:
Linux/macOS: `~/.nuke/`
Windows: `C:\Users\<YourUsername>\.nuke\`
Open with a text editor the file `menu.py` that lives in your Nuke plugin path, or create one if it doesn't exist.
Add the following line:
import SDF_Nodes4. Restart Nuke. The nodes will be available under the **SDF** toolbar menu.
Development
For hot-reloading during development, run in Nuke's Script Editor:
import SDF_Nodes
exec(open(SDF_Nodes.__path__[0] + "/dev_reload.py").read())import SDF_NodesLicense
SDF Nodes is licensed under the **GNU General Public License v3.0 (GPLv3)**.

Comments