Draw the whole serve right-handed, and let the pull wind it up
The racket kept changing hands because the art disagreed with itself: p_idle, p_bounce and p_toss held it in his LEFT hand while p_smash and p_swing used his right, so every new frame copied whichever reference it was handed. The idle, the bounce pair, the toss and the four wind-up frames are all regenerated with the side named — drawn from behind, his right hand is the right-hand side of the image, and only the racket HEAD crosses behind his back. What separates the four wind-up stages is how far the racket has fallen, and that needed the racket head pinned to a body landmark per frame — above his head, beside his ear, between his shoulder blades, at the back of his thighs. Described as "further into it each time" it drew four near-identical poses twice running. They are wired late in the pull, Oliver's call: frame 1 owns the first half and the three coiled frames are packed into the top half. assets/_derive.py is deleted. Fixing generated art by mangling it afterwards is always worse than regenerating; three guards in _regen.py turn the bad rolls that used to install silently into automatic re-rolls — a portrait reference canvas (the generator answered with a 2x2 grid), a non-magenta background (a green sheet keyed away four racket heads), and a mirrored frame. The bounce pair is one drawing from one sheet now, differing only in the free hand, so BOUNCE_IDLE moved to his left side and was re-measured off the sprite. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
231cd8650a
commit
bcff17812f
17 files changed
+181
-170
No files matched your search
+46
-40
@@ -97,18 +97,6 @@
|
||||
"subject": "Four frames of the same tennis player seen from BEHIND in a white shirt, blue shorts and a white headband, holding a racket, drawn as coarse low-resolution pixel art: two waiting stances and two frames of him bouncing a ball before serving.",
|
||||
"anchor": 0
|
||||
},
|
||||
"player_serve": {
|
||||
"sprites": [
|
||||
"p_toss",
|
||||
"p_smash"
|
||||
],
|
||||
"ref_only": [
|
||||
"p_run1"
|
||||
],
|
||||
"anchor": 0,
|
||||
"check": "same",
|
||||
"subject": "The reference is one tennis player in a white shirt, blue shorts and a white headband, seen FROM BEHIND. Draw TWO frames of that same player serving, same size, same style, same BRIGHT WHITE shirt and BRIGHT BLUE shorts as the reference \u2014 do not wash the colours out. Both frames are seen FROM BEHIND, the back of his head towards you, no face, no eyes: (1) the ball toss \u2014 he leans back, his left hand thrown up releasing the ball above him, the racket dropped low behind his back; (2) the smash \u2014 stretched fully upright on his toes, the racket swung high overhead, both arms up. Output exactly two figures in one row, far apart."
|
||||
},
|
||||
"player_run": {
|
||||
"sprites": [
|
||||
"p_run1",
|
||||
@@ -345,30 +333,6 @@
|
||||
"check": "loose",
|
||||
"subject": "Draw TWO frames of an enormous fat zombie brute that has NO HEAD AT ALL \u2014 the neck ends in a ragged red stump at shoulder height, there is no skull, no face, no jaw, nothing above the shoulders \u2014 and whose chest is torn open with the ribs showing. Same body, same clothes and same size as the reference, as two stages of one stride: first left leg forward, then legs swapped with the weight lower. The missing head and the chest wound must be identical in both frames; only the legs change. Output exactly two figures in one row."
|
||||
},
|
||||
"player_stand": {
|
||||
"sprites": [
|
||||
"p_idle1",
|
||||
"p_idle2"
|
||||
],
|
||||
"ref_only": [
|
||||
"p_run1"
|
||||
],
|
||||
"anchor": 0,
|
||||
"check": "same",
|
||||
"subject": "The reference is one tennis player in a white shirt, blue shorts and a white headband, seen FROM BEHIND. Draw TWO frames of that same player, same size, same style. Drawn strictly FROM BEHIND like the reference: the back of his head and the back of his shirt face you, NO face, NO eyes, NO nose, NO mouth anywhere in the image. Frame 1: standing waiting, feet apart, a racket held down at his right side. Frame 2: the same stance with his weight shifted onto the other foot and the racket swung slightly across. Output exactly two figures in one row, far apart."
|
||||
},
|
||||
"player_bounce": {
|
||||
"sprites": [
|
||||
"p_bounce",
|
||||
"p_bounce2"
|
||||
],
|
||||
"ref_only": [
|
||||
"p_run1"
|
||||
],
|
||||
"anchor": 0,
|
||||
"check": "same",
|
||||
"subject": "The reference is one tennis player in a white shirt, blue shorts and a white headband seen FROM BEHIND. Draw TWO frames of that same player getting ready to serve, same size, same style, seen strictly FROM BEHIND \u2014 back of his head towards you, NO face. He holds the racket in his LEFT hand, down at his left side, which is the LEFT-HAND SIDE OF THE IMAGE. His RIGHT hand is empty and reaches down and out to the RIGHT-HAND SIDE OF THE IMAGE, palm down, as if he has just bounced a ball on the ground there. Frame 1: he leans forward slightly, right hand low near the ground. Frame 2: he straightens a little, right hand risen to about knee height. Draw NO ball in either frame \u2014 the ball is added by the game. Output exactly two figures in one row, far apart."
|
||||
},
|
||||
"brute_stages": {
|
||||
"sprites": [
|
||||
"z_gw",
|
||||
@@ -410,7 +374,21 @@
|
||||
"scale": 1.4,
|
||||
"subject": "The reference is an enormous fat zombie brute \u2014 huge belly, stained shirt, brown trousers. Draw TWO frames of that SAME body at that SAME enormous size and bulk, standing, as two stages of damage: (1) both arms gone and the chest and belly torn wide open with the ribs showing through; (2) all of that AND no head at all \u2014 the neck ends in a ragged red stump at shoulder height, no skull, no face, nothing above the shoulders. Do not slim him down. Output exactly two figures in one row, far apart."
|
||||
},
|
||||
"player_pull": {
|
||||
"player_stance_r": {
|
||||
"sprites": [
|
||||
"p_idle1",
|
||||
"p_bounce",
|
||||
"p_bounce2",
|
||||
"p_toss"
|
||||
],
|
||||
"ref_only": [
|
||||
"p_smash"
|
||||
],
|
||||
"anchor": 0,
|
||||
"check": "same",
|
||||
"subject": "The reference is ONE tennis player in a white shirt, blue shorts and a white headband, seen from behind, serving with the racket high in his right hand. Draw FOUR frames of that same man. Every figure is seen strictly FROM BEHIND \u2014 the back of his head and the back of his shirt towards you, NO face, NO eyes, NO nose, NO mouth. Every figure is drawn from exactly the same viewpoint: same camera height, same distance, straight on, standing on the same level ground line, with no perspective distortion, no foreshortening, no worm's-eye or bird's-eye angle and no three-quarter turn. Same size, same body, same style, same BRIGHT WHITE shirt and BRIGHT BLUE shorts as the reference \u2014 do not wash the colours out. He is RIGHT-HANDED and the racket NEVER changes hands: in every single frame the racket is in his RIGHT hand, which \u2014 because he is drawn from behind \u2014 is on the RIGHT-HAND SIDE OF THE IMAGE, exactly as in the reference. His empty left arm is on the LEFT-HAND SIDE OF THE IMAGE. Draw NO ball anywhere in any frame \u2014 the game draws the ball. Frame 1: he STANDS upright and relaxed at the baseline, arms down, the racket hanging at his right side. Frame 2: he leans forward a little and his empty LEFT hand reaches down and out to the LEFT-HAND SIDE OF THE IMAGE, palm down, as if patting a ball on the ground beside his left foot; the racket stays in his right hand at his right side. Frame 3 IS THE SAME DRAWING AS FRAME 2 \u2014 identical stance, identical legs, identical head, identical racket, identical everything \u2014 and the ONLY difference is that his left elbow is bent a little more so that left hand has risen about one hand's width higher, as if the ball had bounced back up into it. Frame 4: the ball toss \u2014 he leans back and throws that same empty LEFT arm up high above him on the LEFT-HAND SIDE OF THE IMAGE, having just released the ball, while the racket stays in his right hand down at his right side. Output exactly four figures in one row, evenly spaced and far apart."
|
||||
},
|
||||
"player_windup": {
|
||||
"sprites": [
|
||||
"p_pull0",
|
||||
"p_pull1",
|
||||
@@ -420,11 +398,39 @@
|
||||
],
|
||||
"ref_only": [
|
||||
"p_idle1",
|
||||
"p_toss",
|
||||
"p_smash"
|
||||
"p_toss"
|
||||
],
|
||||
"anchor": 0,
|
||||
"check": "same",
|
||||
"subject": "The reference shows the SAME tennis player three times \u2014 white shirt, blue shorts, white headband, seen FROM BEHIND: standing, tossing, and smashing. Draw FIVE frames of that same player, same size, same style, same BRIGHT WHITE shirt and BRIGHT BLUE shorts \u2014 do not wash the colours out. Every figure is seen strictly FROM BEHIND, the back of his head towards you, NO face, NO eyes, NO nose. Frame 1 is him simply STANDING upright and relaxed, arms down, racket in his right hand \u2014 a plain standing frame. Frames 2 to 5 are four stages of ONE continuous serve wind-up and each must be clearly further into it than the one before. Through all four the racket stays in ONE hand \u2014 the hand on the LEFT-HAND SIDE OF THE IMAGE, the same hand that holds it in the reference \u2014 and his other arm, on the RIGHT-HAND SIDE OF THE IMAGE, stays thrown up high above him where he has just released the ball. The racket must never change hands between frames. NO BALL is drawn anywhere \u2014 the game draws the ball. Frame 2: standing tall, the racket held UP ABOVE HIS HEAD in his right hand, body straight. Frame 3: the racket has dropped behind his head, his back beginning to arch backwards, knees slightly bent. Frame 4: the racket is down behind his back, his back clearly arched backwards, chest pushed up and out, knees bent. Frame 5: fully coiled \u2014 the racket hangs low behind his back near his waist, his back arched hard backwards, both knees deeply bent, weight back on his heels, ready to explode upwards. Output exactly five figures in one row, evenly spaced and far apart."
|
||||
"scale": 1.6,
|
||||
"arm_left": true,
|
||||
"subject": "The reference shows the same tennis player twice \u2014 white shirt, blue shorts, white headband, seen from behind: standing with the racket in his right hand, and throwing the ball up to serve with his empty left arm high on the left-hand side of the image. Draw FIVE frames of that same man. Every figure is seen strictly FROM BEHIND \u2014 the back of his head towards you, NO face, NO eyes, NO nose \u2014 all from the same camera height and distance, on the same ground line, no perspective distortion and no three-quarter turn. Same size, same body, same style, same BRIGHT WHITE shirt and BRIGHT BLUE shorts, no coloured collar or trim. Draw NO ball anywhere \u2014 the game draws the ball. He is RIGHT-HANDED and the racket NEVER changes hands: his whole right arm stays on the RIGHT-HAND SIDE OF THE IMAGE and his empty LEFT arm stays thrown up high on the LEFT-HAND SIDE OF THE IMAGE. Never mirror him.\nTHE FOUR SERVE FRAMES MUST BE STRONGLY DIFFERENT FROM ONE ANOTHER, and what changes between them is HOW FAR THE RACKET HAS FALLEN: in each frame the racket head is at a clearly lower point on his body than in the frame before, and his body leans further back. Do not draw four similar poses. In ALL FOUR his empty left arm is held up high above him and never comes down \u2014 only the racket falls.\nFrame 1: he simply STANDS upright and relaxed, arms down \u2014 a plain standing frame.\nFrame 2: the racket is held STRAIGHT UP, its head HIGH ABOVE HIS HEAD with clear sky between the racket and his hair, his right arm almost straight, his body upright, and his empty LEFT arm still thrown up high above him on the left-hand side of the image.\nFrame 3: the racket has tipped over backwards so its head now points DOWN and sits BESIDE HIS EAR, level with his face, his right elbow raised to shoulder height, his body just beginning to lean back, and his empty LEFT arm still thrown up high above him on the left-hand side of the image.\nFrame 4: the racket head has fallen to the MIDDLE OF HIS BACK, between his shoulder blades, his right elbow high above his shoulder, his back arched and leaning clearly backwards, knees beginning to bend, and his empty LEFT arm still thrown up high above him on the left-hand side of the image.\nFrame 5: the racket head has fallen all the way down to the BACK OF HIS THIGHS, below his shorts, the racket hanging almost straight down behind him; his right elbow points at the sky beside his head, his body is leaned back as far as it goes with his hips pushed forward, his heels are lifted off the ground, and his empty LEFT arm is STILL thrown up high above him on the left-hand side of the image. This is maximum tension, the instant before he explodes upwards.\nOutput exactly five figures in one row, evenly spaced and far apart."
|
||||
},
|
||||
"player_idle": {
|
||||
"sprites": [
|
||||
"p_idle1",
|
||||
"p_idle2"
|
||||
],
|
||||
"ref_only": [
|
||||
"p_idle1"
|
||||
],
|
||||
"anchor": 0,
|
||||
"check": "same",
|
||||
"scale": 1.6,
|
||||
"subject": "The reference is ONE tennis player in a white shirt, blue shorts and a white headband, seen from behind, standing at the baseline with the racket in his right hand. Draw TWO frames of that same man waiting. Every figure is seen strictly FROM BEHIND \u2014 the back of his head and the back of his shirt towards you, NO face, NO eyes, NO nose, NO mouth. Every figure is drawn from exactly the same viewpoint: same camera height, same distance, straight on, standing on the same level ground line, with no perspective distortion, no foreshortening, no worm's-eye or bird's-eye angle and no three-quarter turn. Same size, same body, same style, same BRIGHT WHITE shirt and BRIGHT BLUE shorts as the reference \u2014 do not wash the colours out.He is RIGHT-HANDED and the racket NEVER changes hands: in every frame the racket is in his RIGHT hand, which \u2014 because he is drawn from behind \u2014 is on the RIGHT-HAND SIDE OF THE IMAGE, exactly as in the reference. His empty left arm hangs on the LEFT-HAND SIDE OF THE IMAGE. Draw NO ball anywhere. THE TWO FRAMES ARE THE SAME DRAWING: identical body, identical arms, identical racket, identical head \u2014 the ONLY difference is a small idle weight shift. Frame 1: his weight is on his left foot, that hip a little higher. Frame 2: the same man with his weight settled onto his right foot. Output exactly two figures in one row, far apart."
|
||||
},
|
||||
"player_drive": {
|
||||
"sprites": [
|
||||
"p_pull0",
|
||||
"p_pull4"
|
||||
],
|
||||
"ref_only": [
|
||||
"p_idle1",
|
||||
"p_pull3"
|
||||
],
|
||||
"anchor": 0,
|
||||
"check": "same",
|
||||
"scale": 1.6,
|
||||
"subject": "The reference shows the same tennis player twice \u2014 white shirt, blue shorts, white headband, seen from behind: standing with the racket in his right hand, and part-way through a serve with the racket dropping behind his back. Draw TWO frames of that same man. Both are seen strictly FROM BEHIND \u2014 the back of his head towards you, NO face, NO eyes, NO nose \u2014 from the same camera height and distance, on the same ground line, no perspective distortion and no three-quarter turn. Same size, same body, same style, same BRIGHT WHITE shirt and BRIGHT BLUE shorts, no coloured collar or trim, a plain grey-strung wooden racket. Draw NO ball anywhere. He is RIGHT-HANDED and the racket stays in his RIGHT hand. Frame 1: he simply STANDS upright and relaxed, arms down \u2014 a plain standing frame. Frame 2 is the instant of MAXIMUM TENSION just before he uncoils. He stands tall and nearly straight, not crouched and not folded over: his legs are long, his heels lifted, and his upper body leans BACKWARDS so his shoulders are behind his hips and his hips are pushed forward. His RIGHT elbow is raised beside his head and the racket hangs STRAIGHT DOWN BEHIND HIS BACK from that hand, the racket head level with his hips. His LEFT arm is folded down in front of his chest. His head is UP and clearly visible from behind with the white headband on it \u2014 his arms must not cover his head, and he must not be bent over sideways or forwards. Output exactly two figures in one row, far apart."
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user