AAA overhaul — wave 5

capture wave5-r3 vs baseline · 18 frame pairs · generated 2026-07-28T07:53:11.260Z

What I need from you: the technical calls are already handled — seams, shadows, z-fighting, frame rate and build health are measured and fixed automatically. What I cannot decide for you is taste: has the art direction drifted somewhere you did not ask it to go? Scroll the pairs, and tell me either "keep going" or which specific frames went the wrong way.

Performance

comeback-city fps124 -14.0% vs 144 frame work1.68ms +37.2% vs 1.22ms draw calls370 -20.2% vs 464 triangles786894 +12.1% vs 702141
penguin-village fps124 -13.8% vs 144 frame work2.51ms +61.6% vs 1.55ms draw calls701 -10.7% vs 785 triangles666624 +32.8% vs 501888

No console errors during capture.

Critic verdicts

BLIND A/B JUDGE, wave5-r3. I opened only tmp/aaa-blind/wave5-r3/pair-NN/{left,right}.png plus docs/AAA_KART_RUBRIC.md. No key file, no source, no build identity. Per pair I named the pixels first, then the verdict. Two builds are trivially separable once you have seen four frames, but I never learned which is which, so I refer to them as BUILD-A (card HUD, sky reaching the top of the frame, extruded curbs, cast shadows) and BUILD-B (row of identical dark pills, a black void band with a hard curved dome seam across the upper frame, big white streak quads floating in the air, flat unshaded terrain, wireframe geodesic shield). Every pair resolved the same direction. PAIR LEDGER (winner, decisiveness, deciding pixels): 01 LEFT / decisive - RIGHT top 15% of frame is black void with a hard curved dome seam; four white streak quads hang in that void as stray geometry; terrain is one flat dark-green plane with zero shading; HUD is seven identical grey pills. LEFT fills the frame with a clouded orange dusk, has 3D red/white rumble curbs with visible thickness, and a hierarchical HUD (85 KM/H, 4TH). 02 RIGHT / decisive - LEFT is the void-top/pill-HUD build. RIGHT has an extruded curb running the whole left-hand corner, a yellow centre line, and a genuine cast shadow off the kart onto the road at frame centre. Fault against RIGHT: a rival kart clips the near plane bottom-left as a pink/white smear. 03 LEFT / decisive - RIGHT has a pink light post with a white bulb planted THROUGH the middle of the racing surface, void top, streak quads. LEFT has a ferris-wheel landmark on the horizon, a merch stall with rendered garment tiles, road-surface motion streaks, and boost glow at the rear wheels. 04 RIGHT / decisive - LEFT curbs are flat painted ribbons with no height; sky is void above the sunset band; no shadows anywhere. RIGHT has a sun disc in cloud, a stepped 3D rumble strip, a long soft cast shadow from both karts, and cyan boost jets with trailing sparks. 05 RIGHT / clear (weakest pair in the set) - LEFT again void + five streak quads, but LEFT's frame is READABLE: boost-pad chevron dead centre, both road edges visible. RIGHT wins on sky, contact shadow and material, but its camera is buried inside the pack: the ice kart and a purple kart fill the lower two-thirds and the road ahead is not legible. Won on rubric axes 1/2/3/9, lost axis 4 and 8. 06 RIGHT / decisive - LEFT's coins are flat discs sunk halfway through the road with hard cyan quads under them (clear artifact). RIGHT's coin is a shaded gold cylinder sitting on the surface with a boost chevron decal beside it, and the curb is a stepped 3D strip. 07 LEFT / decisive - RIGHT is void-top plus five streak quads and cyan triangle decals lying loose on the road. LEFT has a palm prop casting a shadow onto the verge, layered near/mid/far skyline, and rear boost jets. 08 RIGHT / decisive - LEFT's shield is a raw white wireframe geodesic ball; RIGHT's is a smooth translucent ellipsoid with cyan chevrons, and the HUD item slot shows a rendered SHIELD tile. LEFT also has two suns and a void band. 09 LEFT / decisive - RIGHT repeats the wireframe shield ball and drops a stray cyan triangle on the road. LEFT's shield is volumetric, the curb reads in 3D, the road holds a cast shadow. 10 LEFT / decisive - RIGHT is arctic-with-a-black-ceiling: hard dome seam, flat white ground with zero shading, road is a flat blue-black ribbon. LEFT has a warm storm band, snowfall in depth, ice forms with warm rim light, and a shaded gold coin. 11 LEFT / decisive - RIGHT: void top, streak quads, a snowman intersecting the frame edge, cyan triangles on the road. LEFT: sunset gradient, snow spray at the rear wheels, layered bergs. 12 RIGHT / clear - LEFT is the void build BUT it has an honest soft blob shadow under the ice kart; RIGHT's player kart hovers over the asphalt with NO contact shadow at all, and a rival ice kart clips the near plane across the whole bottom-left. RIGHT still wins on sky band, layered berg silhouettes, warm rim on ice and a shaded coin. 13 RIGHT / decisive - LEFT: void, streak quads, flat white ground. RIGHT: faceted ice/rock with warm rim, a raised gold boost ramp with 3D chevrons, cyan road chevrons, pale arctic road surface. 14 LEFT / decisive - RIGHT is the void build. LEFT has depth-layered bergs, snow motion streaks, a shaded coin and an ice-cube item crate. Fault against LEFT: the kart casts no shadow and reads as floating. 15 RIGHT / decisive - LEFT: void, seven streak quads, flat terrain. RIGHT: boost flare, cyan chevrons, faceted mountains with warm rim. 16 RIGHT / decisive - LEFT renders a rival kart as a giant flat blue box slab occluding the road plus the wireframe shield. RIGHT has the volumetric shield, a sardine-cannery sign, layered bergs. Fault against RIGHT: the two flanking coins are roughly 1.5x kart height - the near-camera coin scale reads wrong. 17 LEFT / clear - RIGHT: void, wireframe shield, rival kart as untextured ice-blue boxes. LEFT wins on sky and environment but a large untextured rival driver figure occupies the entire bottom-right quadrant clipping the camera. 18 LEFT / decisive - RIGHT has the item-pickup icon card rendered as a floating billboard in the middle of the SKY (mis-anchored HUD element), plus void, streaks, wireframe shield. LEFT docks that icon in the HUD corner with a gold active ring. AGGREGATE: BUILD-A (card HUD / full sky / extruded curbs / cast shadows) wins 18/18. 15 decisive, 3 clear, 0 slight, 0 ties. No pair accomplished nothing. The scores below are for BUILD-A, the side I judged better. FAIL total 75

18/18 for the same build - 15 decisive, 3 clear, zero ties - but the winner still scores 75/110 and fails on camera, lighting, materials, kart and frame integrity; Penguin Village karts cast no shadow at all.

sky 8lighting 6materials 6trackLegibility 8environment 8kart 6vfx 7camera 5post 7hud 8frameIntegrity 6

Blockers

Still wants fixing

Artefact hunter — wave5-r3. All 18 frames read at full res plus twelve 2x/4x crops; every claim below is anchored to a named frame and, where possible, a pixel measurement (PIL: per-channel clip counts over a HUD-masked frame, contact-zone vs open-road luminance deltas, region-localised clip histograms). Wave-4 frames read side by side to separate NEW from PRE-EXISTING. Import graph checked with grep before any "ships nothing" claim — I make none; the relief/chevron/shadow modules are all genuinely wired. FAIL total 68

68/110. Three wave-4 artefacts are MEASURABLY DEAD and that is the real story: the (66,255,255) road-sheen column is gone (penguin-village-p0_33 green-channel clip 17930 -> 4361, blue 32196 -> 12705); the flat unlit ice wedge that owned the right third of penguin-village-p0_9 is gone and replaced by road and a formed snow bank; and the PV mid-race GPU pacing cliff is gone (wave 4 fell to 13.86ms/71fps at p0_56 and never recovered — wave 5 holds 7.79-8.38ms and 120-129fps across all nine marks). Zero console errors, zero missed marks, no terrain poking the road verge, no displacement LOD popping. But the frame-integrity auto-blockers are still populated. Geometry inside the camera near volume went from 4/18 to 6/18 — comeback-city-p0_15 and penguin-village-p0_78 are verified CLEAN in wave 4 and intruded in wave 5. Penguin Village karts still have no ground contact: measured 7.1% darker under the kart at p0_06, and NEGATIVE at p0_15 (-6.4%) and p0_33 (-4.2%), i.e. the contact zone is BRIGHTER than open road on two of three marks — the wave-4 handoff wording, unchanged. And the chevron rebuild is 90% of the way there but penguin-village-p0_56's right-hand chevron renders one arm as a filled wedge four times the width of its partner.

sky 7lighting 6materials 6trackLegibility 7environment 7kart 5vfx 6camera 4post 7hud 8frameIntegrity 5

Blockers

Still wants fixing

Rubric critic — wave5-r3. All 18 frames read at full resolution plus 11 targeted 2x-4x crops, scored against docs/AAA_KART_RUBRIC.md on the 11-axis / 88-of-110 scale the brief names (the doc's own header says 88/120 because it counts "Motion & feel", which stills cannot judge). Every claim below is a pixel measurement, a crop, or a verified line of source — not an impression. Contact-patch darkening measured as a 46x46 box under each kart against two open-road boxes at the same scanline; sky saturation / per-column R-B over the top 22% of frame; dome seams via a per-row luminance derivative across a 760px strip; cyan and blown-white pixels bucketed into 100px cells to localise them; snow and asphalt flatness via SD over 20-57k px patches. Import graph checked with grep before asserting anything ships or does not ship (driveKartWheels at ComebackCityThreeKartRace.jsx:8692, spin band mounted at :1284, driverMount lean at :8588, coin field at :6803). FAIL total 73

73/110 — the best total of the programme (w1 57/64/42 → w2 63/67/62 → w3 65/63/60 → w4 77/71/61 → 73 on this lens vs 71 last wave) and MATERIALS is genuinely the headline: at close range the player kart now reads as a physical object — glossy red paint with a real specular gradient, matte rubber with a faceted sidewall, a hot red rim ring and a metallic hub carrying a spec streak (PV p0_45, PV p0_9, CC p0_9 crops). Four of the six handed-off defects are measurably gone: the cyan sheen column (PV p0_33's apron is now clean — every cyan pixel below y=520 belongs to the authored chevrons or the neon rails), the torn boost chevrons (CC p0_56, CC p0_9, PV p0_33, PV p0_56 all render solid extruded arrows with clean apexes and side walls), the Kenney rival tint overshoot (rivals ship distinct pink / ice-blue / violet r71g61b143 sat 0.59 with lit SD 21-27, matching the player's 0.63), and frozen wheels (the fused-body spin band fires — hub interior peaks at lum 234-255 at 265-274 km/h against a clean dark hub at 66 km/h). Perf regression from wave 4 is repaired: PV's 13.86ms pacing cliff is gone, frameElapsedMs now 7.79-8.38 across all nine marks, fps 120-129, draws down 383→370 and 707→702, zero console errors. But it FAILs, and on the two axes the brief asked me to judge hardest it FAILs for reasons a player sees first. Penguin Village karts still have NO grounding cue on 4 of 9 marks — measured +6.0% / -1.6% / +8.0% / +4.2% under the contact patch, and the p0_06 and p0_15 crops show tyres ending on asphalt of identical value on both sides of the edge. That is the rubric's automatic blocker, unfixed for a third wave. The driver renders as a near-black unlit void that merges into the seat and roll cage: from the dominant chase-rear view (CC p0_06) only two ears separate from the kart above an apparently empty seat, and the 3/4 view (PV p0_9) shows a cockpit with no readable head, shoulders, arms or hands on the wheel. And CAMERA got WORSE, not better: five of eighteen frames now put a rival kart or a rival's driver at near clip sliced by two frame edges (CC p0_15, CC p0_45, PV p0_24, PV p0_78, PV p0_9) against two last wave. CC p0_45 is the single worst frame of the programme — an ice-blue rival across the centre, a lavender Kenney rival filling the right 40% guillotined by two edges, no identifiable player kart and no readable racing line anywhere in the image.

sky 8lighting 6materials 7trackLegibility 7environment 7kart 6vfx 6camera 4post 7hud 8frameIntegrity 7

Blockers

Still wants fixing

Every frame, before and after

comeback-city · progress 0.06 144fps / 464 draws  →  126fps / 370 draws

BEFORE
before
AFTER
after

comeback-city · progress 0.15 144fps / 464 draws  →  119fps / 370 draws

BEFORE
before
AFTER
after

comeback-city · progress 0.24 144fps / 464 draws  →  127fps / 370 draws

BEFORE
before
AFTER
after

comeback-city · progress 0.33 145fps / 465 draws  →  125fps / 371 draws

BEFORE
before
AFTER
after

comeback-city · progress 0.45 144fps / 465 draws  →  120fps / 371 draws

BEFORE
before
AFTER
after

comeback-city · progress 0.56 143fps / 464 draws  →  122fps / 370 draws

BEFORE
before
AFTER
after

comeback-city · progress 0.67 144fps / 465 draws  →  121fps / 371 draws

BEFORE
before
AFTER
after

comeback-city · progress 0.78 144fps / 464 draws  →  127fps / 370 draws

BEFORE
before
AFTER
after

comeback-city · progress 0.9 144fps / 464 draws  →  128fps / 370 draws

BEFORE
before
AFTER
after

penguin-village · progress 0.06 144fps / 778 draws  →  128fps / 694 draws

BEFORE
before
AFTER
after

penguin-village · progress 0.15 144fps / 786 draws  →  127fps / 702 draws

BEFORE
before
AFTER
after

penguin-village · progress 0.24 144fps / 786 draws  →  126fps / 702 draws

BEFORE
before
AFTER
after

penguin-village · progress 0.33 144fps / 786 draws  →  120fps / 702 draws

BEFORE
before
AFTER
after

penguin-village · progress 0.45 144fps / 786 draws  →  121fps / 702 draws

BEFORE
before
AFTER
after

penguin-village · progress 0.56 144fps / 787 draws  →  120fps / 702 draws

BEFORE
before
AFTER
after

penguin-village · progress 0.67 144fps / 786 draws  →  126fps / 703 draws

BEFORE
before
AFTER
after

penguin-village · progress 0.78 144fps / 786 draws  →  129fps / 702 draws

BEFORE
before
AFTER
after

penguin-village · progress 0.9 144fps / 786 draws  →  120fps / 702 draws

BEFORE
before
AFTER
after