Skip to content

aPS3e_ETK-tuned_v5-GTK Edition

Latest

Choose a tag to compare

@mercurious mercurious released this 09 Jul 19:35

aPS3e_ETK-tuned_v5-GTK Edition

Fixes the 5-year GT "road flicker" bug (RPCS3 #11912) — solving the boss-level visual glitch of Gran Turismo 5 Prologue while improving track performance by reducing shader-variant churn.

An in-place update of a previous ETK-tuned fork preserves your data. Otherwise, if this is your first ETK fork install, use aPS3e's user-data export and import features to easily back up and restore your game data.


What's fixed

GT5 Prologue (and the GT5/GT6 family) had a long-standing bug where, in bumper/hood-cam with no cars ahead, the entire track surface plunged into shadow and strobed as you drove — flipping back to lit at lap lines, ghost spawns, or off-track. It affects every RPCS3-derived emulator on every backend and has been open upstream since 2022. This release cures it at the root — roads render correctly lit and flicker-free.

Why it happened (one paragraph)

In those frames the game parks its shadow-map texture unit on a tiny 1×1 fallback and leaves the texture remap register fully zeroed. The stock decode reads that as "force every channel to zero," so every track draw sampled a shadow value of 0 → whole-track shadow. Real PS3 hardware treats the unconfigured register as neutral (the console renders lit). The fix decodes that exact state as neutral (ONE) instead of zero — the hardware-matching behavior.

Bonus: smoother performance

With the flicker gone, the emulator no longer thrashes between two shader pipeline variants each time the shadow unit flips — the per-material shader churn that came with the bug is eliminated. GT framerate is noticeably steadier, especially through the sections that used to flicker.

Scope & safety

  • Tightly scoped to the exact bug signature (a fully-zeroed remap on a 1×1 texture), so it doesn't touch normal rendering.
  • Diagnostic escape hatches (env vars): GTK_REMAP0_ONE=0 restores the old behavior (A/B kill-switch); GTK_REMAP0_IDENTITY=1 selects an alternate decode for testing.

Validation

Confirmed flicker-free on-device across the usual problem tracks (Daytona, Eiger, and others), N≥3, with the fix's code path log-confirmed as engaged. The same root-cause fix has been independently cross-validated on two distinct GPU/API stacks — Adreno 650 + Turnip (native Vulkan), Apple M1 + MoltenVK (Vulkan-over-Metal), Radeon native Vulkan — and in multiple independent RPCS3-derived codebases, strong evidence it's a real emulation fix, not a driver quirk.

Installing / updating

  • Updating from a previous ETK-tuned fork: standard in-place update — games, firmware, saves, and shader caches are preserved. On first launch the SPU cache rebuilds once (a few minutes), then it's cached.
  • First ETK fork install: use aPS3e's built-in user-data export/import to back up your game data first, install, then restore.

Credits

Root-caused and fixed in the ETK GTK RPCS3 Edition, backported here. Localized from the original bug reporter's own captures on upstream RPCS3 issue #11912.

Developed with Anthropic Claude Code.