ComfyUI Node
Pixel Art Studio
A ComfyUI node in image/transform with 10 inputs and 1 output.
Pixel Art Studio
- frames
- pixel_art
◄pixel_size5►
◄kernel_size5►
◄num_colors256►
◄edge_stylehard►
◄alpha_threshold0.58►
◄stability1.00►
◄looptrue►
◄width0►
◄height0►
Categoryimage/transform
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| frames | IMAGE | — | |
| pixel_size | INT | 51–128 | — |
| kernel_size | INT | 51–128 | Sampling window per block. Equal to pixel_size = exact tiling; larger overlaps neighboring blocks for a softer, chunkier look. |
| num_colors | COMBO | 256 | Global palette size, fit once across all frames on the reduced blocks (no per-frame palette flicker). |
| edge_style | COMBO | hard | hard = crisp pixel-art edges: the art grid is reduced by nearest sampling (no invented in-between colors along contours) and output alpha is snapped to fully opaque/transparent, matching hand-drawn sprite edges. soft = area-averaged reduce and graded alpha (antialiased look). |
| alpha_threshold | FLOAT | 0.580–1 | Coverage level treated as ~50% opacity for the graded output alpha. 0 = raw coverage. |
| stability | FLOAT | 1.000–1 | Temporal hysteresis on the block vote (video): previous winner keeps a block unless clearly beaten. 0 disables. |
| loop | BOOLEAN | true | Treat the batch as a seamless loop: every temporal mechanism (vote hysteresis, palette hysteresis, alpha trigger) gets a hidden warm-up pass so frame 1 starts from the end-of-sequence state -- no snap at the last-to-first wrap. Disable for non-looping footage. |
| widthopt | INT | 00–8192 | Output width. 0 = input width. One of width/height set = keep aspect. |
| heightopt | INT | 00–8192 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| pixel_art | IMAGE | — |