fix(vk): support PsychoV35 in the TAAU replacement #528

Closed
futondestroyer wants to merge 2 commits from futondestroyer/Longshot:codex/psychov35-taau into main
Member

Type: fix · Risk: medium · Tested on: Windows, RTX 4070 · Needs: Linux renderer build; AMD HDR gameplay

Why

Where the gameplay TAAU replacement is active, Native HDR with PsychoV35 can leave the scene black while the HUD remains visible. The replacement only accepts packed output even though PsychoV35 uses RGBA16F buffers.

Related compatibility report: #226 (the DLSS/FSR 4 report is closed; this PR extends a separate rendering path).

How to reproduce

Seen on: Windows kernel 26300 / 26H2, RTX 4070, driver621.01.
Settings and switches: Native HDR, PsychoV35, game upscaler at 75%, FG Off. Force the replacement on NVIDIA with RX_VK_TAAU_KEYS=fd029a317a9a4b94; compatibility flag 0.
Steps: At the daylight ranch alley, use a configuration where the TAAU replacement is active; switch Vanilla/PsychoV35 and 75/100/75.
Expected: A visible scene with matching typed output and reset history.
Actual: The scene is black while the HUD remains visible.

What changed

Give the spatial/FXAA replacement a matching PsychoV35 output and history format. This restores the scene while retaining the existing replacement algorithm.

  • Add a generated RGBA16F variant of the existing spatial/FXAA replacement. Both output and history bindings match the actual format; colour decoding remains the existing single square.
  • Cache packed/RGBA pipelines separately. Recreate history and invalidate its bound on a format change; retire prior images after 120 presents as before. Non-gameplay helpers stay packed.
  • Resolve matching RGBA16F sampled/storage views for translated TAAU dispatches. Handle the same narrowly identified gameplay network in the rejected-network fallback, keeping base-level/type/swizzle/view/serial checks. Invalid pairs fail rather than blitting encoded input into linear output.
  • Execute the production dispatch with Vulkan spies, extend existing stand-in/fallback fixtures, validate both compiled storage bindings and shader hashes, and document the unchanged spatial/FXAA behavior.

Measurements

Current review base: main @ 7494ce4e. The current pushed head is named in Reviewer notes; the table retains the actual historical measured builds.

Verdict: Both fixed runs restore the scene: exact-black scene ROI falls from 100% to 0% in both A/B pairs; tone/size switches pass.

Main at original submission: 543846eb (2026-11-14)
Branch at original submission: codex/psychov35-taau @ e1da8a66 (measured code; results-only commit on top)
Baseline: development base @ 514591a3 + PR400, original TAAU replacement

Both renderers use the unchanged agreed development base/host, the common merged PR400 matcher fix and identical private diagnostics. The fixed pack adds this TAAU change; its older Vulkan module-creation guard is retained in both arms. The new rejected-network function is identical to this PR; the production-function CPU tests and separate current-source renderer build validate the PR itself. These are isolated renderer-pack measurements, not fresh full current-main game builds. Bases and game artifacts stay local.

Hardware: RTX 4070 12 GB, NVIDIA 621.01, i7-13700F, 32 GB RAM, Windows kernel 26300 / 26H2.
Scene: Lon Lon Ranch daylight alley, same fresh copied checkpoint and camera. Output 2560x1440, client 2560x1421, Native HDR 200/1000 nits, game's upscaler, 75%, FG Off, cap 61, sharpness 0, compatibility flag 0. Explicit RX_VK_TAAU_KEYS=fd029a317a9a4b94 exercises the replacement on this NVIDIA GPU; it does not represent the default native-network NVIDIA path.
Method: original/fixed/original/fixed. Five settled ten-second phases per process: PsychoV35 75%, Vanilla 75%, PsychoV35 75%, PsychoV35 100%, PsychoV35 75%. Actual options, stable play and native PQ output were recorded. Exact-black fraction is measured over x200:1000/y150:600 of the first 1280x720 capture, excluding HUD/minimap. World time and animation were not frozen. No FPS result is claimed.

Metric per run Before: development base @ 514591a3, PR400 and original taau After: this PR @ e1da8a66, development base 514591a3 and PR400
First PsychoV35 75% scene ROI exact-black pixels 100%, 100%; median 100% 0%, 0%; median 0%
RGBA16F replacement diagnostic Absent, both runs Present, both runs
Vanilla 75% packed helper Present, both runs Present, both runs
Settled phases captured 5, 5 5, 5
Process exit Normal, both runs Normal, both runs
fixed: vk: typed upscale helper fd029a317a9a4b94, RGBA16F output
fixed: vk: typed upscale helper fd029a317a9a4b94, packed output

How to reproduce: Native HDR, PsychoV35, game upscaler at 75%, with the replacement active. On NVIDIA, use the existing key override above. Compare the black scene/remaining HUD on the original with a visible scene and RGBA16F helper diagnostic here; switch Vanilla/PsychoV35 and 75/100/75. The new production-dispatch fixture fails unchanged main at the format-switch/history assertion and passes this branch.

Flags and settings

None. None added. No default changes. The existing RX_VK_TAAU_KEYS=fd029a317a9a4b94 override forces this replacement on NVIDIA for validation; software-matrix paths already use it. This is not restored temporal AA. The DLSS/FSR 4 opt-in, Upscaler Off fix and FSR 3.1 work remain separate.

Testing

Readiness validation on main7494ce4e: clean main: 533 passed, 7 failed, 34 skipped in 119 s (windows, 24 at once). This PR: 535 passed, 7 failed, 34 skipped in 122 s (windows, 24 at once). The same seven failures occur on both: tests/test_cpm_discovery.py, tests/test_linux_preflight.py, tests/test_make_game_cache.py, tests/test_oot_state_tap.py, tests/test_release.py, tests/test_tested_configurations.py, tests/test_walk_key.py. No PR-only failures. The actual rebased Windows renderer, with the locally installed NGX SDK, compiles and links successfully (57.3 seconds end-to-end). The PR production files are byte-identical to the prior submitted head. All eight related PR screenshot links were checked anonymously with range GET: HTTP206 and valid PNG signatures; HEAD requests are rejected by the server and were not used as evidence of broken links. No new in-game or performance run is claimed.

Tested: full python -I -B tests/run_all.py: 535 passed / 4 failed / 34 skipped here, 533 passed / the same 4 failed / 34 skipped on clean main 543846eb. Shared failures: test_oot_state_tap, test_release, test_tested_configurations, test_walk_key. No PR-only failure. The focused shader/stand-in/fallback checks pass. The new Vulkan-spy fixture executes the actual typed dispatch: separate pipelines, packed/RGBA transitions with history reset, independent spatial history, unsupported modes, and deferred image retirement. The real stand-in fixture checks both matching views and its existing rejected-path lookup behavior. Rejected-network cases cover mixed formats, overrides, mips, swizzles, missing views/storage and pipeline failure without an incorrect blit.

Both shader headers were generated with glslang 16.6.0 and name the source SHA-256. The packed shader's binary words are unchanged. The SPIR-V fixture follows binding 1 and 2 through variable/pointer/image types to verify both output and history formats. The renderer pack compiles/links with zero failures. The separate actual current-source renderer compiled and linked in 58 seconds with zero failures. Four game runs above completed with no device-lost, validation-error or pipeline-failure line. New run files validate through the catalogue CLI. The disposable runtime was restored; shared bases and normal installation remain untouched.

Not tested: AMD/Intel hardware, Linux build/runtime, normal native-network NVIDIA gameplay without the override, longer play, other scenes, active frame generation or calibrated HDR brightness. No genuine temporal-AA restoration, performance improvement, Off support or FSR 3.1 support is claimed.

External checks: Fork CI remains blocked by required conditions; Test Farm approval awaits a maintainer. These are pending, not passing. The Linux checkbox stays unticked; do not mark ready until required external coverage is settled.

Must be tested:

  • Linux, clang or GCC: documented renderer-only build and taau, psychov35_taau, taau_typed_dispatch and upscale_fallback fixtures, expecting successful compilation and all relevant regressions passing (by hand: T-FJH5; Test Farm: @Beanstalk Linux renderer build and focused fixtures).
  • AMD GPU with a Native HDR monitor, Windows or Linux: Native HDR, PsychoV35, game upscaler at 75%, FG Off. Force the replacement on NVIDIA with RX_VK_TAAU_KEYS=fd029a317a9a4b94; compatibility flag 0. At the daylight ranch alley, use a configuration where the TAAU replacement is active; switch Vanilla/PsychoV35 and 75/100/75. Expecting a visible scene with matching typed output and reset history. (by hand: T-BHEU; compare logs, colours, history and errors).

Screenshots

The two approved current-run 75% comparisons show the same saved viewpoint; raw PQ captures support relative inspection, not calibrated brightness. Animation and world time are not frozen.

Development base 514591a3 + PR400, original forced TAAU replacement

Original PsychoV35 TAAU replacement: black scene with HUD

Development base 514591a3 + PR400 + TAAU fix e1da8a66

Fixed PsychoV35 TAAU replacement: visible ranch

Risks

What could break: A shader/view mismatch could lose output or change colour. Both storage bindings, views and history use one selected format; unsupported/mixed pairs and unrelated dispatches stay rejected. Format transitions reset the optional history bound, and retired images remain alive for in-flight work. Select Vanilla or revert this commit. RX_VK_TAAU_KEYS=- also disables the replacement where the real network is supported; it is not a workaround for GPUs that cannot run it.

Turning it off: Choose Vanilla or revert this isolated fix.

Compatibility: No save migration, option-file schema, public renderer ABI or builder-tool requirement is introduced by this PR. The TAAU helper shaders change and are compiled into the renderer; the game shader cache format is unchanged.

Reviewer notes

Final upstream check: main advanced to 5d3ecc78 after the validated rebase at7494ce4e. git merge-tree reports a clean merge for this PR against that newer main; the full-suite/build numbers above remain tied to the validated7494ce4e base. No new measured result on5d3ecc78 is claimed. The combined-tree fixture run is prepared but deferred while another job holds the shared lock and for the17:30 Halifax autobuild priority window; standalone PR fixtures passed.

This preserves the existing spatial/FXAA replacement and its single colour decode. It does not make the replacement temporal AA. Start with the format-keyed pipeline/history in typed_upscale, then both descriptor-view entry paths. No public renderer API or third-party source changes. The Off PR edits nearby documentation; if either lands first, rebase and retain both support notes.

Current readiness refresh rebases onto main7494ce4e; current branch head 10dcd837. Historical game measurements retain their original measured commits. This rebase includes upstream build/profile changes, so no current-head performance claim is made. The relevant production functions are unchanged by this readiness refresh; no production changes were added in this readiness refresh. Each PR merges individually against current main; shared documentation requires preserving each path when the other PRs land.

Issues

Related scene matcher: #400.
Separate upscaling-Off fix: #527.
No fix claim for the broader transition investigation: #344.

Checklist

Everyone

  • One topic.
  • The title is a Conventional Commit (type(scope): description) of the status line's type.
  • Why gives the reason plainly and links the issues that fit (the tracker searched).
  • Measurements has a verdict, or one line saying why there is nothing to measure.
  • Testing names what was tested, what wasn't, and what must still be tested, where and how.
  • Rebased on current main. (Validated7494ce4e; final clean-merge check against5d3ecc78.)
  • python -I -B tests/run_all.py passes (any failure that also fails on main is named).
  • No game files, dumps, build output or generated files.
  • third_party/ untouched (a new folder with a PROVENANCE.md instead).
  • The license is OK: GPL-3.0-or-later, nothing incompatible and nothing decompiled.

When it applies

  • AI assistance recorded with Assisted-by: / Co-Authored-By: trailers.
  • Numbers from the same PC, scene and settings, at least 2 interleaved runs each, the median reported.
  • Switches documented (docs/development.md; the README for a menu row) and shipped at their recommended value.
  • Screenshots of the same spot, captioned like the Measurements columns, for a change that shows on screen.
  • A file in docs/tested/ for each new measured run (format in docs/tested-configurations.md).
  • The SPIR-V headers regenerated with glslang (a shader changed).
  • A game-free test added for the fix, failing on main and passing here.
  • A check under tests/ that reads changed source updated in this PR, not weakened.
  • Host code builds on both Windows (llvm-mingw) and Linux, with UTF-8 paths. (Rebased Windows renderer passes; Linux pending T-FJH5.)
  • Docs updated.
**Type:** fix · **Risk:** medium · **Tested on:** Windows, RTX 4070 · **Needs:** Linux renderer build; AMD HDR gameplay ## Why Where the gameplay TAAU replacement is active, Native HDR with PsychoV35 can leave the scene black while the HUD remains visible. The replacement only accepts packed output even though PsychoV35 uses RGBA16F buffers. Related compatibility report: https://git.magicbean.dev/MagicBeanDev/Longshot/issues/226 (the DLSS/FSR 4 report is closed; this PR extends a separate rendering path). ## How to reproduce **Seen on:** Windows kernel 26300 / 26H2, RTX 4070, driver621.01. **Settings and switches:** Native HDR, PsychoV35, game upscaler at 75%, FG Off. Force the replacement on NVIDIA with RX_VK_TAAU_KEYS=fd029a317a9a4b94; compatibility flag 0. **Steps:** At the daylight ranch alley, use a configuration where the TAAU replacement is active; switch Vanilla/PsychoV35 and 75/100/75. **Expected:** A visible scene with matching typed output and reset history. **Actual:** The scene is black while the HUD remains visible. ## What changed Give the spatial/FXAA replacement a matching PsychoV35 output and history format. This restores the scene while retaining the existing replacement algorithm. - Add a generated RGBA16F variant of the existing spatial/FXAA replacement. Both output and history bindings match the actual format; colour decoding remains the existing single square. - Cache packed/RGBA pipelines separately. Recreate history and invalidate its bound on a format change; retire prior images after 120 presents as before. Non-gameplay helpers stay packed. - Resolve matching RGBA16F sampled/storage views for translated TAAU dispatches. Handle the same narrowly identified gameplay network in the rejected-network fallback, keeping base-level/type/swizzle/view/serial checks. Invalid pairs fail rather than blitting encoded input into linear output. - Execute the production dispatch with Vulkan spies, extend existing stand-in/fallback fixtures, validate both compiled storage bindings and shader hashes, and document the unchanged spatial/FXAA behavior. ## Measurements Current review base: **main @ 7494ce4e**. The current pushed head is named in Reviewer notes; the table retains the actual historical measured builds. **Verdict:** Both fixed runs restore the scene: exact-black scene ROI falls from 100% to 0% in both A/B pairs; tone/size switches pass. Main at original submission: 543846eb (2026-11-14) Branch at original submission: codex/psychov35-taau @ e1da8a66 (measured code; results-only commit on top) Baseline: development base @ 514591a3 + PR400, original TAAU replacement Both renderers use the unchanged agreed development base/host, the common merged PR400 matcher fix and identical private diagnostics. The fixed pack adds this TAAU change; its older Vulkan module-creation guard is retained in both arms. The new rejected-network function is identical to this PR; the production-function CPU tests and separate current-source renderer build validate the PR itself. These are isolated renderer-pack measurements, not fresh full current-main game builds. Bases and game artifacts stay local. Hardware: RTX 4070 12 GB, NVIDIA 621.01, i7-13700F, 32 GB RAM, Windows kernel 26300 / 26H2. Scene: Lon Lon Ranch daylight alley, same fresh copied checkpoint and camera. Output 2560x1440, client 2560x1421, Native HDR 200/1000 nits, game's upscaler, 75%, FG Off, cap 61, sharpness 0, compatibility flag 0. Explicit `RX_VK_TAAU_KEYS=fd029a317a9a4b94` exercises the replacement on this NVIDIA GPU; it does not represent the default native-network NVIDIA path. Method: original/fixed/original/fixed. Five settled ten-second phases per process: PsychoV35 75%, Vanilla 75%, PsychoV35 75%, PsychoV35 100%, PsychoV35 75%. Actual options, stable play and native PQ output were recorded. Exact-black fraction is measured over x200:1000/y150:600 of the first 1280x720 capture, excluding HUD/minimap. World time and animation were not frozen. No FPS result is claimed. | Metric per run | Before: development base @ 514591a3, PR400 and original taau | After: this PR @ e1da8a66, development base 514591a3 and PR400 | |---|---|---| | First PsychoV35 75% scene ROI exact-black pixels | 100%, 100%; median **100%** | 0%, 0%; median **0%** | | RGBA16F replacement diagnostic | Absent, both runs | Present, both runs | | Vanilla 75% packed helper | Present, both runs | Present, both runs | | Settled phases captured | 5, 5 | 5, 5 | | Process exit | Normal, both runs | Normal, both runs | ```text fixed: vk: typed upscale helper fd029a317a9a4b94, RGBA16F output fixed: vk: typed upscale helper fd029a317a9a4b94, packed output ``` How to reproduce: Native HDR, PsychoV35, game upscaler at 75%, with the replacement active. On NVIDIA, use the existing key override above. Compare the black scene/remaining HUD on the original with a visible scene and RGBA16F helper diagnostic here; switch Vanilla/PsychoV35 and 75/100/75. The new production-dispatch fixture fails unchanged main at the format-switch/history assertion and passes this branch. ### Flags and settings None. None added. No default changes. The existing `RX_VK_TAAU_KEYS=fd029a317a9a4b94` override forces this replacement on NVIDIA for validation; software-matrix paths already use it. This is not restored temporal AA. The DLSS/FSR 4 opt-in, Upscaler Off fix and FSR 3.1 work remain separate. ## Testing **Readiness validation on main7494ce4e:** clean main: 533 passed, 7 failed, 34 skipped in 119 s (windows, 24 at once). This PR: 535 passed, 7 failed, 34 skipped in 122 s (windows, 24 at once). The same seven failures occur on both: `tests/test_cpm_discovery.py`, `tests/test_linux_preflight.py`, `tests/test_make_game_cache.py`, `tests/test_oot_state_tap.py`, `tests/test_release.py`, `tests/test_tested_configurations.py`, `tests/test_walk_key.py`. **No PR-only failures.** The actual rebased Windows renderer, with the locally installed NGX SDK, compiles and links successfully (57.3 seconds end-to-end). The PR production files are byte-identical to the prior submitted head. All eight related PR screenshot links were checked anonymously with range GET: HTTP206 and valid PNG signatures; HEAD requests are rejected by the server and were not used as evidence of broken links. No new in-game or performance run is claimed. **Tested:** full `python -I -B tests/run_all.py`: **535 passed / 4 failed / 34 skipped** here, **533 passed / the same 4 failed / 34 skipped** on clean main 543846eb. Shared failures: `test_oot_state_tap`, `test_release`, `test_tested_configurations`, `test_walk_key`. No PR-only failure. The focused shader/stand-in/fallback checks pass. The new Vulkan-spy fixture executes the actual typed dispatch: separate pipelines, packed/RGBA transitions with history reset, independent spatial history, unsupported modes, and deferred image retirement. The real stand-in fixture checks both matching views and its existing rejected-path lookup behavior. Rejected-network cases cover mixed formats, overrides, mips, swizzles, missing views/storage and pipeline failure without an incorrect blit. Both shader headers were generated with glslang 16.6.0 and name the source SHA-256. The packed shader's binary words are unchanged. The SPIR-V fixture follows binding 1 and 2 through variable/pointer/image types to verify both output and history formats. The renderer pack compiles/links with zero failures. The separate actual current-source renderer compiled and linked in 58 seconds with zero failures. Four game runs above completed with no device-lost, validation-error or pipeline-failure line. New run files validate through the catalogue CLI. The disposable runtime was restored; shared bases and normal installation remain untouched. **Not tested:** AMD/Intel hardware, Linux build/runtime, normal native-network NVIDIA gameplay without the override, longer play, other scenes, active frame generation or calibrated HDR brightness. No genuine temporal-AA restoration, performance improvement, Off support or FSR 3.1 support is claimed. **External checks:** [Fork CI](https://git.magicbean.dev/MagicBeanDev/Longshot/actions/runs/9054/jobs/1) remains blocked by required conditions; [Test Farm approval](https://beanstalk.magicbean.dev/prs/528) awaits a maintainer. These are pending, not passing. The Linux checkbox stays unticked; do not mark ready until required external coverage is settled. **Must be tested:** - Linux, clang or GCC: documented renderer-only build and taau, psychov35_taau, taau_typed_dispatch and upscale_fallback fixtures, expecting successful compilation and all relevant regressions passing (by hand: T-FJH5; Test Farm: @Beanstalk Linux renderer build and focused fixtures). - AMD GPU with a Native HDR monitor, Windows or Linux: Native HDR, PsychoV35, game upscaler at 75%, FG Off. Force the replacement on NVIDIA with RX_VK_TAAU_KEYS=fd029a317a9a4b94; compatibility flag 0. At the daylight ranch alley, use a configuration where the TAAU replacement is active; switch Vanilla/PsychoV35 and 75/100/75. Expecting a visible scene with matching typed output and reset history. (by hand: T-BHEU; compare logs, colours, history and errors). ## Screenshots The two approved current-run 75% comparisons show the same saved viewpoint; raw PQ captures support relative inspection, not calibrated brightness. Animation and world time are not frozen. **Development base 514591a3 + PR400, original forced TAAU replacement** ![Original PsychoV35 TAAU replacement: black scene with HUD](https://git.magicbean.dev/attachments/77393de3-feb7-4252-a90f-0df45d68b301) **Development base 514591a3 + PR400 + TAAU fix e1da8a66** ![Fixed PsychoV35 TAAU replacement: visible ranch](https://git.magicbean.dev/attachments/51ceffa5-66c0-43d9-b97f-bd5db8f90957) ## Risks **What could break:** A shader/view mismatch could lose output or change colour. Both storage bindings, views and history use one selected format; unsupported/mixed pairs and unrelated dispatches stay rejected. Format transitions reset the optional history bound, and retired images remain alive for in-flight work. Select Vanilla or revert this commit. `RX_VK_TAAU_KEYS=-` also disables the replacement where the real network is supported; it is not a workaround for GPUs that cannot run it. **Turning it off:** Choose Vanilla or revert this isolated fix. **Compatibility:** No save migration, option-file schema, public renderer ABI or builder-tool requirement is introduced by this PR. The TAAU helper shaders change and are compiled into the renderer; the game shader cache format is unchanged. ## Reviewer notes Final upstream check: main advanced to **5d3ecc78** after the validated rebase at7494ce4e. `git merge-tree` reports a clean merge for this PR against that newer main; the full-suite/build numbers above remain tied to the validated7494ce4e base. No new measured result on5d3ecc78 is claimed. The combined-tree fixture run is prepared but deferred while another job holds the shared lock and for the17:30 Halifax autobuild priority window; standalone PR fixtures passed. This preserves the existing spatial/FXAA replacement and its single colour decode. It does not make the replacement temporal AA. Start with the format-keyed pipeline/history in `typed_upscale`, then both descriptor-view entry paths. No public renderer API or third-party source changes. The Off PR edits nearby documentation; if either lands first, rebase and retain both support notes. Current readiness refresh rebases onto main7494ce4e; current branch head 10dcd837. Historical game measurements retain their original measured commits. This rebase includes upstream build/profile changes, so no current-head performance claim is made. The relevant production functions are unchanged by this readiness refresh; no production changes were added in this readiness refresh. Each PR merges individually against current main; shared documentation requires preserving each path when the other PRs land. ## Issues Related scene matcher: https://git.magicbean.dev/MagicBeanDev/Longshot/pulls/400. Separate upscaling-Off fix: https://git.magicbean.dev/MagicBeanDev/Longshot/pulls/527. No fix claim for the broader transition investigation: https://git.magicbean.dev/MagicBeanDev/Longshot/issues/344. ## Checklist ### Everyone - [x] One topic. - [x] The title is a Conventional Commit (`type(scope): description`) of the status line's type. - [x] Why gives the reason plainly and links the issues that fit (the tracker searched). - [x] Measurements has a verdict, or one line saying why there is nothing to measure. - [x] Testing names what was tested, what wasn't, and what must still be tested, where and how. - [x] Rebased on current `main`. (Validated7494ce4e; final clean-merge check against5d3ecc78.) - [x] `python -I -B tests/run_all.py` passes (any failure that also fails on `main` is named). - [x] No game files, dumps, build output or generated files. - [x] `third_party/` untouched (a new folder with a `PROVENANCE.md` instead). - [x] The license is OK: GPL-3.0-or-later, nothing incompatible and nothing decompiled. ### When it applies - [x] AI assistance recorded with `Assisted-by:` / `Co-Authored-By:` trailers. - [x] Numbers from the same PC, scene and settings, at least 2 interleaved runs each, the median reported. - [x] Switches documented (docs/development.md; the README for a menu row) and shipped at their recommended value. - [x] Screenshots of the same spot, captioned like the Measurements columns, for a change that shows on screen. - [x] A file in `docs/tested/` for each new measured run (format in `docs/tested-configurations.md`). - [x] The SPIR-V headers regenerated with glslang (a shader changed). - [x] A game-free test added for the fix, failing on `main` and passing here. - [x] A check under `tests/` that reads changed source updated in this PR, not weakened. - [ ] Host code builds on both Windows (llvm-mingw) and Linux, with UTF-8 paths. (Rebased Windows renderer passes; Linux pending T-FJH5.) - [x] Docs updated.
Assisted-by: OpenAI Codex
docs(tested): record PsychoV35 TAAU replacement checks
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 5s
Website / Website on Cloudflare (pull_request_target) Has been skipped
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
Website / Website on Cloudflare (pull_request) Has been cancelled
8f9c631889
Assisted-by: OpenAI Codex
Author
Member

Completed two interleaved original/fixed game pairs, current-source Windows renderer build and full-suite main comparison; added the approved before/after attachments and measured run records. Linux build/fixtures T-FJH5 and AMD Native HDR gameplay T-BHEU are open: could a maintainer add testing wanted? This remains WIP for Linux build coverage. The local RTX 4070 test explicitly forces the existing replacement; no default NVIDIA/native-network coverage or genuine temporal-AA restoration is claimed. Off remains the separate PR #527 ; FSR 3.1 is next and separate. No merge requested from automation.

Completed two interleaved original/fixed game pairs, current-source Windows renderer build and full-suite main comparison; added the approved before/after attachments and measured run records. Linux build/fixtures T-FJH5 and AMD Native HDR gameplay T-BHEU are open: could a maintainer add testing wanted? This remains WIP for Linux build coverage. The local RTX 4070 test explicitly forces the existing replacement; no default NVIDIA/native-network coverage or genuine temporal-AA restoration is claimed. Off remains the separate PR https://git.magicbean.dev/MagicBeanDev/Longshot/pulls/527 ; FSR 3.1 is next and separate. No merge requested from automation.
Author
Member

Readiness refresh: rebased onto main7494ce4e. The PR production files are byte-identical to the previously submitted head; historical game measurements remain tied to their measured commits. Fresh local main/branch suites and Windows builds are in progress under the shared-machine lock; no new gameplay or performance run is claimed.

@Beanstalk Linux renderer-only build and the psychov35_taau, taau_typed_dispatch, taau_fxaa and upscale_fallback game-free fixtures. Expect matching storage formats, pipeline/history switches and rejection cases to pass. Build and run through the development guide; publish compiler/OS/hardware, exact tested commit, results and safe log excerpts on this PR. The existing manual test request remains open; no duplicate manual request is being created.

Readiness refresh: rebased onto main7494ce4e. The PR production files are byte-identical to the previously submitted head; historical game measurements remain tied to their measured commits. Fresh local main/branch suites and Windows builds are in progress under the shared-machine lock; no new gameplay or performance run is claimed. @Beanstalk Linux renderer-only build and the psychov35_taau, taau_typed_dispatch, taau_fxaa and upscale_fallback game-free fixtures. Expect matching storage formats, pipeline/history switches and rejection cases to pass. Build and run through the development guide; publish compiler/OS/hardware, exact tested commit, results and safe log excerpts on this PR. The existing manual test request remains open; no duplicate manual request is being created.
futondestroyer force-pushed codex/psychov35-taau from 8f9c631889
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 5s
Website / Website on Cloudflare (pull_request_target) Has been skipped
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
Website / Website on Cloudflare (pull_request) Has been cancelled
to 10dcd83727
Some checks failed
PR description / Description follows the template (pull_request_target) Failing after 7s
Website / Website on Cloudflare (pull_request) Has been cancelled
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
beanstalk/approval not approved yet
2026-11-14 21:15:25 +00:00
Compare
Member

@futondestroyer only members of BigBeans can start the farm. One of them can approve this request by reacting 👍 to it.

@futondestroyer only members of `BigBeans` can start the farm. One of them can approve this request by reacting 👍 to it.
Author
Member

Readiness audit completed: rebased onto7494ce4e; final clean-merge check also passes against newer main5d3ecc78. Refreshed the description to the current template, preserving the actual historical game-measurement commits and screenshots. Fresh full suites have no PR-only failures against the same seven failures reproduced on clean7494ce4e. All screenshot links return valid PNG data through anonymous range GET. Current-source Windows renderer builds and links successfully. The combined-tree fixture check is similarly deferred; no combined-runtime claim is made. Linux (and the listed AMD HDR checks where applicable) remain pending. Test Farm approval and fork CI jobs explicitly await maintainer authorization, so this remains WIP. Please approve the farm/fork jobs and enable the existing manual requests as appropriate. No PR was merged.

Readiness audit completed: rebased onto7494ce4e; final clean-merge check also passes against newer main5d3ecc78. Refreshed the description to the current template, preserving the actual historical game-measurement commits and screenshots. Fresh full suites have no PR-only failures against the same seven failures reproduced on clean7494ce4e. All screenshot links return valid PNG data through anonymous range GET. Current-source Windows renderer builds and links successfully. The combined-tree fixture check is similarly deferred; no combined-runtime claim is made. Linux (and the listed AMD HDR checks where applicable) remain pending. Test Farm approval and fork CI jobs explicitly await maintainer authorization, so this remains WIP. Please approve the farm/fork jobs and enable the existing manual requests as appropriate. No PR was merged.
futondestroyer changed title from WIP: fix(vk): support PsychoV35 in the TAAU replacement to fix(vk): support PsychoV35 in the TAAU replacement 2026-11-14 22:05:56 +00:00
Owner

Closing: this change is already on main through #608, which took it together with the other PsychoV35 changes and turned the compatibility path on by default. Rebased onto main, what is left of this branch is its earlier opt-in form (RX_VK_PSYCHOV35_DLSS=1), which would undo 608's default, so there is nothing more to merge. Thanks!

Closing: this change is already on main through https://git.magicbean.dev/MagicBeanDev/Longshot/pulls/608, which took it together with the other PsychoV35 changes and turned the compatibility path on by default. Rebased onto main, what is left of this branch is its earlier opt-in form (`RX_VK_PSYCHOV35_DLSS=1`), which would undo 608's default, so there is nothing more to merge. Thanks!
HumanBean closed this pull request 2026-11-15 03:37:33 +00:00
Some checks failed
PR description / Description follows the template (pull_request_target) Failing after 7s
Website / Website on Cloudflare (pull_request) Has been cancelled
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
beanstalk/approval not approved yet

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
MagicBeanDev/Longshot!528
No description provided.