---
title: Node Editor
order: 2
---

Chisel ships a small dedicated node editor — the *Chisel Shader Editor* — that lets you compose colors, mix shaders, and drive masks from other Chisel objects. It's separate from Blender's main shader editor because the engine evaluates these nodes alongside the SDF, not via Cycles or EEVEE.

![Chisel node graph](../assets/material-nodegrapth.webp)

## Opening the editor

1. Open any *Node Editor* area (or split off a new one).
2. In the header, switch the tree type to **Chisel Material**.
3. The active object's material tree appears.

If the material has no tree yet, click **Create Node Tree** in [Material Properties](panel.md) first — that creates a default *Matcap Shader → Material Output* graph for you.

## Adding nodes

Press `Shift + A` in the Chisel Shader Editor to open the add menu. Nodes are grouped under **Input**, **Shader**, and **Output** submenus.

![Add-node menu](../assets/material-nodes.webp)

## Node reference

### Color *(Input)*

Outputs a constant RGB value.

- **Color** — RGB swatch
- **Output** — *Color*

Drop one in, plug into a Matcap Shader's *Color* socket, done.

### Field *(Input)*

Outputs a `0–1` factor based on the signed distance to another Chisel object — the same SDF the engine uses, exposed as a mask.

- **Object** — pointer to a Chisel object
- **Output** — *Factor* (Value)

Use Field to drive a Mix Shader so one shading stops where another begins. Move the target object and the mask follows.

### Matcap Shader *(Shader)*

The default surface shader — the one auto-created when you click **New** in *Material Properties*.

- **Color** — input socket (default `0.8, 0.8, 0.8`)
- **Blend** — Value socket (controls the matcap blend factor for the surface)
- **Output** — *BSDF*

You can have multiple Matcap Shaders in one tree, each feeding a Mix Shader's *A* / *B* inputs.

### Mix Shader *(Shader)*

Blend two shaders by a factor, with optional smoothness for a soft seam.

- **Factor** — `0–1` (Value socket)
- **Smoothness** — width of the soft falloff (Value socket)
- **Shader A** — first shader input
- **Shader B** — second shader input
- **Output** — mixed shader

Pair Mix Shader with a Field input to get an SDF-driven mask between two materials — the seam follows the target object as it moves.

### Material Output *(Output)*

The terminus of every Chisel material tree.

- **Surface** — accepts any Chisel shader
- No outputs

Your tree must end at this node for the engine to pick up the material.

## Limits

- The Chisel Shader Editor is independent of Blender's Eevee/Cycles shader trees. Node trees you create here only affect the Chisel render engine.
- Nodes are evaluated per pixel by the ray-marching engine. Keep trees compact — a few nodes per object is the typical complexity. Deep node graphs slow the render.

## See also

- [Material Panel](panel.md) — the simple color workflow without a node tree
- [Modifiers: Boolean](../modifiers/boolean.md) — *Material Blend* color seam width
- [Render Engine](../render-engine/index.md) — viewport quality and matcap settings
