Docs / Workflows / Character consistency
Workflows
Character consistency
Keeping one character recognisable across many poses and angles — four methods, cheapest first.
The hardest problem in sprite work. A model that makes a beautiful hero once, and a different beautiful hero the next time, has not helped you.
Four approaches, in the order you should try them.
1. Multi-reference editing (start here)
klein-4B’s headline capability. Encode one or more reference images through the FLUX.2 VAE, feed them in as reference latents, and generate a variation that keeps the identity.
It is ComfyUI-native — no custom nodes — and the whole stack is about 5 GB, so it runs without evicting the resident services. For most sprite work this is the answer, and it is the open-weights equivalent of the commercial editing models.
Warning
2. The spritesheet LoRAs
Two installed LoRAs turn one design into a set directly:
- 2×2 turnaround — four camera angles of the same character from a single input. Generates on a keyed background by design, which makes cutting the cells apart trivial.
- 4-direction walk cycle — up/down/left/right walk frames plus jump and prone, at 32×32.
These are the cheapest route to a coherent set, because consistency is baked into what the LoRA was trained to emit rather than being negotiated at inference time.
3. Train a character LoRA (highest consistency)
Still the strongest method: 15–40 images of your character, trained into a small LoRA (76–325 MB) that you then apply like any other.
It does not train on this card. The published recipe needs roughly 24 GB of VRAM — more than the 16 GB here even with everything evicted. Train it on a larger GPU or rent time; inference with the resulting LoRA is trivial and runs here comfortably.
Worth it when a character recurs across hundreds of frames. Overkill for a one-off.
4. Identity adapters (largely superseded)
IP-Adapter and its relatives still work and are still useful in the SDXL lane, but they have been demoted. There is no IP-Adapter for klein or Z-Image, and for a face rendered at 32–64 pixels the machinery is disproportionate to the problem.
Reach for this only if you are already working in SDXL for another reason.
A pipeline that combines them
For a character that needs to appear everywhere:
- Design the hero at high resolution with klein-4B + pixel LoRA. Iterate until you love one image.
- Generate the turnaround with the spritesheet LoRA — four angles, consistent.
- Produce per-pose variants with klein multi-reference editing, using the turnaround as reference.
- Cut out the background.
- Detect the pixel grid, quantise the palette, and scale — see Pixel-perfect output .
- If the character will appear in hundreds of frames, stop and train a character LoRA off-box first. It pays for itself quickly.
Source: content/workflows/character-consistency.md · maintained in the nuilab-aigaming repository.