From 87e2367daf77e4e605734ed0fc33f32a34b0683e Mon Sep 17 00:00:00 2001 From: ReaperOfVeriod Date: Wed, 14 Oct 2026 04:44:37 +0200 Subject: [PATCH] Retract the "cutout matters far more" claim; the counts do not support it 25d73b4 said: alpha testing (cutout) matters far more than alpha blending on this disc and cited 0.98% fully clear against 1.08% partial as the evidence. Those two numbers are the same size. The cutout path handles the fully-clear texels and the blend path handles the partial ones, so the measurement I gave is if anything marginally against the claim, not for it. The conclusion did not follow from the number attached to it. What survives is a different and weaker claim, and it is about failure shape rather than texel count: - a texel that should be discarded but is drawn puts geometry where there is none. That is visible from a screenshot and someone will file a bug about it. - a partial texel drawn opaque is a slightly wrong soft edge. That is not visible and will not be reported. So cutout first is still the right order, but the reason is which failure a human notices, not how many texels are involved. Stated that way it is defensible; stated the way I did it was an overclaim with a number attached to make it sound measured, which is the specific failure mode rules 3 and 3a exist to prevent. This is the fourth thing this session where a plausible implementation or claim turned out to be wrong on inspection, and the second in two commits where the error was in the reasoning rather than the code. Code errors get caught by tests because the tests execute. Reasoning errors get caught by re-reading the number the claim rests on and checking that it says what the sentence says. Retracted and replaced rather than softened, per AGENTS 3a. --- docs/roadmap.md | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/docs/roadmap.md b/docs/roadmap.md index 8d4eb13..e05a03d 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -725,11 +725,18 @@ lookup, and it is the main thing inherited from ReRAC. every decoded tfrag texture on 27 levels: **97.94% fully opaque, 0.98% fully clear, 1.08% partial across 126 distinct values.** So the `0x80 -> 1.0` rule is not a corner case -- it is what 22.7 million texels do -- while - blending touches about 1% of them. **Alpha testing (cutout) matters far more - than alpha blending on this disc**, and the 126 evenly-populated partial - values look like smooth alpha (soft edges, foliage, distance fade) rather - than a quantised blend ladder. That reorders the remaining GS work: the - cutout path is the one that has to be right. + blending touches about 1.08% of them. **These are the same size** -- the cutout + path handles the 0.98% fully-clear texels, the blend path the 1.08% + partial -- so an earlier version of this note claiming cutout "matters far + more" was not supported by the counts it cited. What does make cutout more + consequential is the *shape* of the failure: a clear texel drawn when it + should be discarded puts geometry where there is none, which is visible, + while a partial texel drawn opaque is a slightly wrong soft edge, which is + not. Cutout first is a claim about which failure you notice, not about how + many texels are involved. + + The 126 evenly-populated partial values look like smooth alpha (soft edges, + foliage, distance fade) rather than a quantised blend ladder. **No draw-path or shader work has started.** - [ ] VU0/VU1 skinning and lighting on the PS2 float model