mirror of
https://github.com/RetroPortingToolKit/psxrecomp
synced 2026-10-27 18:52:11 -04:00
4177029320
The far 2D backdrop (a sprite-tagged tile grid: sky gradient band + flower-ball field) draws first each frame, before the GTE 3D world, and bypasses the GTE -- so in native-wide it stays 4:3-width and leaves a void on the revealed margin (the flower seam and, behind it, the gradient-blue sky seam at the same width). Fix: gate the existing GL centre-stretch on native-wide + sprite-tagged + BACKGROUND PHASE. A per-frame latch (ws_bg_phase_note at GP0 decode) marks the phase over once the first shaded/gouraud prim (the 3D world's signature) is drawn, so the early tagged backdrop tiles are stretched (filling both the flower and sky seams, width scaled too -> no inter-tile gaps) while HUD/characters (tagged but post-3D) and the GTE world (untagged, already widened) are excluded. Replaces the dead flower-struct address-range gate (drawn prims are rebuilt into the OT, disjoint from the struct -> never matched). USER-VERIFIED live: both seams gone, HUD/Tomba/3D undistorted. ws_dbg_stretch debug modes retained for analysis. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>