Colour is arithmetic: match each frame onto the anchor instead of asking for it

The character-as-image fix landed and did NOT close the gap, which is the answer
I promised to report rather than paper over. The brute's serve sheet came back
with his build, his garments and his DARK TONES PIXEL-IDENTICAL to the anchor —
(56,56,32) both — and his big pale shirt two shades brighter, (200,200,184)
against (176,176,152). The model was looking straight at the character. It held
identity perfectly and re-lit the largest flat area anyway, because every call
re-renders and re-rendering re-lights.

No prompt fixes that. Six gates spent a day trying to make a generator do
arithmetic.

So the arithmetic happens here now. Pair each of a frame's dominant colours with
its nearest anchor colour, fit one gain+offset per channel across those pairs,
apply it to every pixel. Pairs further apart than NEW_COLOUR are dropped from the
FIT — colours the anchor genuinely has not got, i.e. blood on a fresh wound — but
they still RECEIVE the transform, so a wound stays the right red relative to the
body it is on. The gain is clamped so one odd pair cannot posterise a frame.

PROVEN ON THE REJECTED FRAME BEFORE SPENDING A SINGLE CALL, which is the
discipline I skipped all day: the frame that measured 20.0 away passes after
correction, its shirt pulled from (200,200,184) to (176,176,160).

And the order is now CORRECT, THEN CHECK — the palette gate is a safety net for
what arithmetic could not fix, not a tripwire for what it can.

The model this leaves:
  the generator, given references  ->  identity, pose, composition
  the pipeline, deterministically  ->  exact colour
  the gates                        ->  layout accidents only

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
wuwiandClaude Opus 5 committed 2026-08-12 14:46:56 +02:00
1 parent 525f017636
commit a58e8b18aa
11 files changed
+81 -9

No files matched your search

+4 -2
View File
@@ -1465,13 +1465,14 @@
"z_brserve"
],
"ref_only": [
"z_br1",
"z_rbounce",
"z_rtoss",
"z_rserve"
],
"check": "loose",
"anchor": 0,
"subject": "The reference image is a 3-FRAME SPRITE SHEET of one zombie tennis player. Redraw THE WHOLE SHEET as a COMPLETELY DIFFERENT ZOMBIE: an ENORMOUS FAT ZOMBIE BRUTE — the same creature as this game's brute, now playing tennis: a HUGE SAGGING BELLY hanging out over the belt, a filthy PALE GREY-GREEN button-up work shirt straining over it, dark stains and a torn ragged hem, heavy OLIVE-BROWN work trousers, thick tree-trunk legs, scuffed brown boots, a SMALL BALD HEAD sunk low into massive rounded shoulders, heavy jowls, sunken eyes, green-grey dead skin, and a wooden tennis racket looking tiny in one huge fist. He is FAR bulkier, heavier and wider than the lean man in the reference — twice his width — and much shorter in the neck. KEEP ALL 3 POSES EXACTLY AS THEY ARE IN THE REFERENCE — the same stance, the same steps with the same leg forward in each, the same swing, the same facing, the same arm and racket positions, the same order left to right, the same total height and the same distance from the camera. Only the CHARACTER changes; the POSES do not. There is NO TENNIS BALL anywhere in any frame — the game draws the ball itself, so the hands and the air are empty and the poses are the same as if a ball were there. Output exactly 3 figures side by side in ONE horizontal row, all on the same ground line. ",
"subject": "The FIRST reference image is THE CHARACTER — the exact zombie to draw, and the ONLY source for who it is: its build, its bulk, its height, its clothing and every colour of it. Copy that character exactly. The REMAINING reference images are 3 POSES, and are there ONLY to show what the body is doing — never who it is. Draw THE CHARACTER FROM THE FIRST IMAGE in each of those 3 poses, in the same order, at the same size and the same distance from the camera, all facing the same way. The character never changes; only the pose does. There is NO TENNIS BALL anywhere in any frame — the game draws the ball itself, so the hands and the air are empty and the poses are the same as if a ball were there. Output exactly 3 figures side by side in ONE horizontal row, all on the same ground line. ",
"newart": true,
"palette_anchor": "z_br1"
},
@@ -1483,6 +1484,7 @@
"z_brrise"
],
"ref_only": [
"z_br1",
"z_rfall1",
"z_rfall2",
"z_rfall3",
@@ -1490,7 +1492,7 @@
],
"check": "loose",
"anchor": 0,
"subject": "The reference image is a 4-FRAME SPRITE SHEET of one zombie tennis player. Redraw THE WHOLE SHEET as a COMPLETELY DIFFERENT ZOMBIE: an ENORMOUS FAT ZOMBIE BRUTE — the same creature as this game's brute, now playing tennis: a HUGE SAGGING BELLY hanging out over the belt, a filthy PALE GREY-GREEN button-up work shirt straining over it, dark stains and a torn ragged hem, heavy OLIVE-BROWN work trousers, thick tree-trunk legs, scuffed brown boots, a SMALL BALD HEAD sunk low into massive rounded shoulders, heavy jowls, sunken eyes, green-grey dead skin, and a wooden tennis racket looking tiny in one huge fist. He is FAR bulkier, heavier and wider than the lean man in the reference — twice his width — and much shorter in the neck. KEEP ALL 4 POSES EXACTLY AS THEY ARE IN THE REFERENCE — the same stance, the same steps with the same leg forward in each, the same swing, the same facing, the same arm and racket positions, the same order left to right, the same total height and the same distance from the camera. Only the CHARACTER changes; the POSES do not. There is NO TENNIS BALL anywhere in any frame — the game draws the ball itself, so the hands and the air are empty and the poses are the same as if a ball were there. Output exactly 4 figures side by side in ONE horizontal row, all on the same ground line. ",
"subject": "The FIRST reference image is THE CHARACTER — the exact zombie to draw, and the ONLY source for who it is: its build, its bulk, its height, its clothing and every colour of it. Copy that character exactly. The REMAINING reference images are 4 POSES, and are there ONLY to show what the body is doing — never who it is. Draw THE CHARACTER FROM THE FIRST IMAGE in each of those 4 poses, in the same order, at the same size and the same distance from the camera, all facing the same way. The character never changes; only the pose does. There is NO TENNIS BALL anywhere in any frame — the game draws the ball itself, so the hands and the air are empty and the poses are the same as if a ball were there. Output exactly 4 figures side by side in ONE horizontal row, all on the same ground line. ",
"newart": true,
"palette_anchor": "z_br1"
},