Dynamic Color Palette
A downloadable tool
One palette. Two textures. Zero material sprawl.
Dynamic Color Palette is a Blender addon and Godot 4 shader for low-poly and stylized game artists. It generates a structured HSV color palette as a GPU texture directly inside Blender — every face on your mesh points its UV at a cell in that palette. In Godot, one material and one draw call cover the entire mesh, no matter how many colors it uses.
The Problem It Solves
Low-poly and stylized 3D workflows need lots of colors. The naive approach — one material per color — produces dozens of materials and dozens of draw calls. A hand-crafted texture atlas solves the draw-call problem but is tedious to build and painful to iterate on.
Dynamic Color Palette generates the atlas for you, keeps it structured and editable, and handles UV placement automatically.
Two Workflows, One Tool
Multicolor — One material, UV-driven color
All faces share a single material (dcp_multicol). Color is determined by where the UV island
sits in the palette texture. The Godot shader reads both textures at the same UV coordinate and resolves
color, roughness, metalness, and emission. One mesh. One material. One draw call.
Singlecolor — Baked flat color, dedicated material
For faces that need their own material — so they can be toggled, swapped, or animated independently in the engine — DCP creates a standalone Principled BSDF material with color and PBR values baked in. No texture lookup, no UVs needed. DCP caches these by palette cell so identical colors are never duplicated.
Both workflows coexist in the same project.
Feature Highlights
- 🎨 Procedural palette generation
- HSV grid with configurable columns, rows, pastel saturation, and shadow row; rendered as a GPU texture inside Blender
- 📐 PBR data texture
- A second texture encodes roughness, metalness, and emission strength per cell; three independent quadrants (Solid / Metal / Emission) with their own PBR values
- ⚡ Emission strips
- The emission quadrant is subdivided into vertical strength strips (up to 5 levels), letting you vary emission intensity without extra cells
- 🖱️ Interactive color picker
- Click a cell in the Blender Image Editor to assign it to selected faces or objects instantly; works in Edit Mode and Object Mode
- 🧹 Material cleanup
- Removes unused material slots and orphaned DCP materials in one click; respects Fake User
- 📦 Auto-export
- Four independent export paths (Textures, JSON Config, GDShader, GDScript Util); each can be set or left empty; all files are written on every Generate run
- 🎮 Godot 4 shaders included
dcp_multicol.gdshaderresolves color and PBR from the palette UV at runtime;dcp_singlecol.gdshadercomputes the palette UV from integer uniforms — supports two palette cells (cell_a_x/y,cell_b_x/y) with amix_a_buniform for smooth runtime color blending; exported directly from the Configure dialog — no separate download needed
License
- Blender addon — GPL v3
- Exported Godot shader / GDScript files — MIT (free for commercial use)
| Status | Released |
| Category | Tool |
| Author | Frank Winter |
| Tags | Blender, blender-scripts, color-palette, Game Design, game-development, Godot, godot-shader, Low-poly, Open Source |
| AI Disclosure | AI Assisted, Code |
Download
Click download now to get access to the following files:
Development log
- DCP 2.1.1: Singlecol Shader — Two-Color Blending61 days ago
- DCP 2.1: Shaders and Config Exported Directly from Blender62 days ago
- DCP 2.0.7: Bugfix Release70 days ago
- DCP 2.0.6: Minor Bugfixes71 days ago
- DCP 2.0: Full Blender Add-on72 days ago
- DCP 1.1: Object Mode & Multi-Object Edit Support75 days ago





Leave a comment
Log in with itch.io to leave a comment.