← Fusion node reference
Utility / ExpressionsAdvanced

CustomTool

Expression-driven channel processing

Provides programmable per-channel image processing through expressions, user controls, LUTs and intermediate variables.

CustomTool
DaVinci Resolve · Fusion

CustomTool is Fusion’s general-purpose expression node for building calculations that do not justify a dedicated compiled tool.

Overview

What CustomTool does

The node exposes user Numbers, Points and LUT controls, intermediate Setup variables and expressions for Red, Green, Blue, Alpha and auxiliary channels. This makes it suitable for procedural image math, custom channel remapping and prototype effects.

Intermediate expressions help break a complicated formula into readable stages. User controls can then expose only the parameters an artist needs to adjust.

CustomTool is powerful but easy to make opaque. Naming exposed controls and documenting the math is part of building a maintainable Fusion comp.

Mental model

Think of it as a small programmable image processor embedded inside the node graph.

Common uses

Custom channel math
Procedural color transforms
Expression-based masks
Prototype effects
Reusable artist controls around image equations

Flow anatomy

Inputs & outputs

The port structure shows how this node fits into a Fusion graph.

Image

The image whose channels and coordinates are available to expressions.

CustomTool
Fusion node

Image

The processed image after the node operation.

Inspector

Important parameters

Start with these controls before reaching for more complicated workarounds.

Controls / Point In 1–4

Exposes user-editable point controls.

Controls / Number In 1–8

Exposes scalar controls for expressions.

Controls / LUT In 1–4

Exposes editable lookup curves.

Point In 1–4

Provides four custom point inputs that can be referenced by CustomTool expressions.

Number In 1–8

Sets the Number In 1–8 threshold.

LUT In 1–4

Provides four custom LUT inputs that can be referenced by CustomTool expressions.

Setup 1–8

Defines reusable setup expressions and variables.

Intermediate 1–8

Stores intermediate calculations to simplify final channel formulas.

Red

Defines the Red output expression.

Green

Defines the Green output expression.

Blue

Defines the Blue output expression.

Alpha

Defines the Alpha output expression.

Aux Channel Expressions

Calculates additional technical channels when needed.

Random Seed

Controls deterministic random behavior inside supported expressions.

Reseed

Generates a new random sequence.

Show Number 1–8

Shows Number 1–8 in the Viewer for setup or diagnostics.

Viewer guides do not normally change the rendered image unless the control explicitly says otherwise.

Name for Number 1–8

Renames the custom Number controls so their purpose is clear in the Inspector.

Show Point 1–4

Shows Point 1–4 in the Viewer for setup or diagnostics.

Viewer guides do not normally change the rendered image unless the control explicitly says otherwise.

Name for Point 1–4

Renames the custom Point controls so their purpose is clear in the Inspector.

Show LUT 1–4

Shows LUT 1–4 in the Viewer for setup or diagnostics.

Viewer guides do not normally change the rendered image unless the control explicitly says otherwise.

Name for LUT 1–4

Renames the custom LUT controls to match the curves they are being used for.

Practical setup

A reliable workflow

  1. 1

    Define the user-facing controls first.

  2. 2

    Build complex math in Setup and Intermediate slots.

  3. 3

    Write the final RGBA expressions using those variables.

  4. 4

    Check alpha independently from RGB.

  5. 5

    Rename exposed controls before handing the comp to another artist.

Typical node chain
Image + User Controls
Expressions
Custom RGBA Output

Examples

Where this node fits in real work

Custom RGB remap

Prototype a channel transform without writing a Fuse.

MediaInCustomToolMediaOut

Artist-facing macro logic

Use Numbers and LUTs as clean controls over expression math.

MediaInCustomTool with exposed controlsMerge

Troubleshooting

Common mistakes

Putting every operation into one unreadable expression.
Forgetting that alpha may need different logic from RGB.
Leaving user controls with generic names in a shared comp.

Production notes

Practical tips

Use Intermediate slots as named conceptual stages.
Keep formulas deterministic unless random behavior is intentional.
Promote only the controls artists actually need.

Related nodes