- type_id:
procedural_palette - category:
Palette/Create - editor:
ProceduralPaletteEditor
Overview
Creates a linked palette defined by base colors and derivation rules. A shadow color can use a rule such as “base color lightness −12,” so changing one base color updates every shadow and highlight. Think of it as a node-based blueprint for a color scheme.
Usage tips
- Unlike a manual
palette_create, which is a list of colors, this node defines relationships between colors. It excels at repeated structures such as a character palette with a base color plus two shadow levels. - Share a variable such as
shadow_l_1across all colors to control the depth of every shadow with one value. - Save a mature recipe as a common asset and reference it from other projects with
procedural_palette_ref.
Related nodes
procedural_palette_ref— references a recipe saved as a common assetpalette_create— manual list-of-colors versionindexed_image_apply_palette/indexed_image_render— apply the output palettepalette_adjust_oklch— temporary adjustment without a recipe
Purpose
This node creates a palette whose colors change together based on base colors and variables.
For example, variables for shadow colors can adjust a set containing a red base, red shadow 1, red shadow 2, blue base, blue shadow 1, and blue shadow 2 together.
The main output is a regular Palette. Connect it directly to existing palette
inputs such as IndexedImage Render or IndexedImage Apply Palette; no special image
processing is required.
Understanding recipes
A recipe has two main elements.
| Element | Role |
|---|---|
| Variable | A numeric value referenced by multiple slots, for example shadow_l_1 = -12 |
| Slot | A palette index defined as either a manual or derived color |
Slots support the following types.
| Type | Description |
|---|---|
| Manual color | Assigns a color directly to that index |
| OKLCH-derived | Starts from the color at another index and offsets L / C / H / A in OKLCH space |
Expressions support the following syntax.
| Syntax | Meaning |
|---|---|
-12 |
Use the number directly |
$shadow_l_1 |
Reference the shadow_l_1 variable |
var:shadow_l_1 |
Same as above |
For an OKLCH-derived color, L is measured in percentage points. A value of -12
reduces OKLCH lightness by 12 points relative to the source color.
How to use
- Add Procedural Palette.
- Open its editor.
- Create a base color as a Manual Color.
- Create shadow and highlight colors as OKLCH-derived colors.
- Enter a variable such as
$shadow_l_1forL. - Connect the
paletteoutput to IndexedImage Render or another consumer. - Move the variable slider and review the color change in the connected image.
Variable parameters
This node has Float parameters from variable_1 through variable_8.
Variables in the dedicated editor can be bound to these parameters. Promote a parameter to an input pin to control shadow strength or another value dynamically from a waveform or numeric node.
v1 limitations
- Recipes do not yet accept external inputs.
- The dedicated recipe type is output-only.
- OKLCH adjustment is the initial derivation method.
- For now, use variables and slot editing in the dedicated editor rather than an advanced graph-style expression editor.
This design allows future features such as recipe composition, slot-range
generation, and automatic generation from a color wheel without changing existing
Palette consumer nodes.