Fix band overlap -- measure the 3-5px gap edge-to-edge, not top-to-top
GLITCH_STATE_POOL computed top2 as top1 minus a 3-5px top-to-top gap, which let magenta (band2) overlap cyan (band1) whenever band2's own height exceeded that gap -- e.g. h2=4 with a 3px top-to-top gap put magenta's bottom edge 1px into cyan's territory. Recomputed every entry so the gap is measured edge-to-edge (top1 - (top2 + h2)), guaranteeing a real 3-5px of clean space between the two bands regardless of height. Verified 0 black-corner hits across 263 frames.
This commit is contained in:
1 parent
c950b9db17
commit
68bd445303
1 file changed
+16
-10
+16
-10
@@ -400,16 +400,22 @@ GLITCH_STATE_POOL = [
|
|||||||
# two scanline rows; accepted, since the shorter height was the ask.
|
# two scanline rows; accepted, since the shorter height was the ask.
|
||||||
#
|
#
|
||||||
# hue2 (-60.0, magenta) is placed 3-5px *above* hue1 (150.0, cyan) in
|
# hue2 (-60.0, magenta) is placed 3-5px *above* hue1 (150.0, cyan) in
|
||||||
# every entry (top2 = top1 - a 3-5px gap) -- a fixed relative offset
|
# every entry -- a fixed relative offset rather than
|
||||||
# rather than independently-random positions, per request.
|
# independently-random positions, per request. The gap is measured
|
||||||
(10, 3, -2, 150.0, 6, 4, 2, -60.0),
|
# edge-to-edge (top1 - (top2 + h2)), not top-to-top (top1 - top2):
|
||||||
(14, 4, 2, 150.0, 11, 3, -3, -60.0),
|
# an earlier version used top-to-top, which let band2 (magenta)
|
||||||
(8, 2, -3, 150.0, 3, 4, 1, -60.0),
|
# overlap band1 (cyan) whenever h2 exceeded the top-to-top gap (e.g.
|
||||||
(20, 4, 1, 150.0, 16, 2, -2, -60.0),
|
# h2=4 with a 3px top-to-top gap put magenta's bottom edge 1px into
|
||||||
(6, 3, -1, 150.0, 3, 3, 3, -60.0),
|
# cyan's territory). top2 = top1 - h2 - gap guarantees a real 3-5px
|
||||||
(24, 2, 3, 150.0, 19, 4, -1, -60.0),
|
# of clean space between them regardless of h2.
|
||||||
(12, 3, -2, 150.0, 8, 2, 1, -60.0),
|
(12, 3, -2, 150.0, 4, 4, 2, -60.0),
|
||||||
(18, 4, 1, 150.0, 15, 3, -3, -60.0),
|
(16, 4, 2, 150.0, 10, 3, -3, -60.0),
|
||||||
|
(14, 2, -3, 150.0, 5, 4, 1, -60.0),
|
||||||
|
(22, 4, 1, 150.0, 16, 2, -2, -60.0),
|
||||||
|
(10, 3, -1, 150.0, 3, 3, 3, -60.0),
|
||||||
|
(26, 2, 3, 150.0, 19, 4, -1, -60.0),
|
||||||
|
(14, 3, -2, 150.0, 8, 2, 1, -60.0),
|
||||||
|
(20, 4, 1, 150.0, 14, 3, -3, -60.0),
|
||||||
]
|
]
|
||||||
|
|
||||||
# render.Sequence doesn't loop on its own (see _glitch_scanlines below), so
|
# render.Sequence doesn't loop on its own (see _glitch_scanlines below), so
|
||||||
|
|||||||