Skip to content

fix(agc): preserve infinite depth bounds - #7627

Merged
adriadam10 merged 2 commits into
boykopovar:mainfrom
JJenkx:fix/agc-infinite-depth-bounds
Oct 20, 2026
Merged

adriadam10 merged 2 commits into
boykopovar:mainfrom
JJenkx:fix/agc-infinite-depth-bounds

Conversation

@JJenkx

@JJenkx JJenkx commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

What

Preserve IEEE infinities when decoding DB_DEPTH_BOUNDS_MIN/MAX. Crimson Spires PPSA03568 writes positive infinity (0x7f800000) to DWORD 9; main aborts with AGC graphics: non-finite register at DWORD 9 before its main menu.

Use a dedicated depth-bound decoder that rejects NaNs while preserving finite values and infinities. Other floating-point register checks stay unchanged. ValidateDepthBounds still refuses bounds outside [0,1] unless VK_EXT_depth_range_unrestricted is enabled; no clamping, title-specific path, extension bypass or fake success is added. The Vulkan extension removes the depth-bound range restriction.

Decoder commit 964dcbef47cfd38c89523eb6dd202c0d3e55c199 plus test-registration follow-up 33f65a7eba, on main c34e9d855cb496ef1525b3ccbddebdba10fe6541.

Tested

2026-10-19 current-main composition check: on pinned main 9d2d40f5eedfa8c5f4312517175147eb0181001a, #7817 alone removes the earlier full-optimizer BDA ABI failure but the native title then aborts at non-finite register at DWORD 9. Adding only this PR produces 0f6f2897cc2d2ae81cd30cefc5ad7b3134a53f71: libraries build and depth-bounds state, unused-viewport depth and graphics checks pass 3/3, with required Vulkan, shader cache disabled and core validation (zero VUIDs or missing-layer messages). A warm native PPSA03568 run reaches driving dialogue and closes normally after 249.10 s, exit 0, PID gone and settings restored. The driving scene is still too dark. Adding the published #6959 stack (including its #6934 prerequisite) separately restores visible scene lighting. These are explicitly composed results, not a new isolated bring-up or speed claim. Sanitized run summary · Focused checks · Baseline driving scene · Layered-rendering driving scene

Latest rebase: two commits, no merge commits, on main 3fdd1f52e968c57d2b6890b11863f96aee0c11ce; head 8bd880ceb1b358e6e58bb5e9337eff01e34388a3. Resolved the additive CMake conflict while retaining upstream’s unused-viewport-depth test and this PR’s depth-bounds runtime properties, including Windows PATH setup. agc_driver_graphics_tests and its runtime dependencies build. Depth-bounds state, unused viewport depth and graphics checks pass 3/3, no skips, 3.29 seconds on the Linux configuration below. Conventions and whitespace checks pass. This refresh adds no new native-title or performance claim.

Isolated current-main follow-up on main 676d423968a1a8fcc79c6247020ce22090a8e0d4: only this PR's decoder and CTest-registration changes are applied, producing 5aede09b0711f27a449e77cd9bfed444417f5a58. Full libraries and graphics tests build; agc_driver_depth_bounds_state and agc_driver_graphics pass 2/2, 2.65 s. With the same dump option (APS5_PLAYGO_UNLISTED_CHUNKS=installed), unchanged main reaches 574 frames and aborts at AGC graphics: non-finite register at DWORD 9; main plus this PR reaches driving dialogue and 1,648 completed frames, then closes normally after 132.32 s (exit 0). Both processes are gone and the udmabuf limit is restored to 64 MiB. The driving screenshot is visibly too dark, also confirmed by the user; this establishes startup progress, not visual correctness or a speed gain. Isolated-run summary, tests and dark-scene screenshot, assets prefixed crimson-depthbounds-sync76-.

Current-main integration check on a6dd29b3daf3ba25bf4c2e138ad380b887ad4d49: exact #7681 plus this PR and #7630, integration head ce17127384d4436a092b623236945d9fe3385e81. Full libraries and focused test executables build; initialization, commands, guest shader linking, depth-bounds state, graphics and three control-flow modes pass 8/8 without skips (6.17 seconds, RADV). A 228.91-second native run reaches the Crimson Spires menu, records 1,451 completed frames and closes normally (exit 0); PID gone and udmabuf limit restored to 64 MiB. Menu screenshots still show an excessively dark 3D scene with bright UI. Vulkan validation reports image-view usage, blend attachment, index/vertex-buffer and barrier-mask errors; this is startup/integration evidence, not visual correctness, full gameplay or performance evidence. The current-main-only run hits the independent versioned-register-defaults sentinel regression before this depth-bounds path; current main plus only #7681 reaches 514 frames then reproduces non-finite register at DWORD 9.

Arch Linux 7.2.9-arch1-1, Ryzen 9 7950X, GCC Release, bundled source-built dependencies, RX 6650 XT with RADV Mesa 26.2.4.

  • Full runtime libs and agc_driver_graphics_tests build successfully.
  • agc_driver_depth_bounds_state and agc_driver_graphics: 2/2 pass, no skips. These are CPU/mock graphics checks. Regression coverage includes finite bounds, each infinite endpoint, both infinities, NaN rejection at both endpoints, preservation of infinity rejection for other registers, and rejection without / acceptance with the unrestricted-depth capability.
  • Negative control: the unchanged new regression fails against the original decoder at positive-infinite DB_DEPTH_BOUNDS_MAX. The diagnostic-only native build reports 0x7f800000; that diagnostic is excluded from the PR.
  • Native startup: main aborts after its publisher splash. The pre-rebase version of this fix reaches the readable New Game menu. The pre-rebase candidate c777a0f1941c on main 218aa8f00bab renders the menu at 30 and 130 seconds, closes normally after 148.49 seconds (exit 0), and restores its temporary kernel setting. Main 218aa8f00bab aborts at the bound read; the intervening main merge feat(agc): link calls through the AGC FS table #6160 does not change State.cpp. The final rebased head 964dcbef47cf also passes the original bound-read failure. Its 30-second snapshot still shows the publisher logo; Cross was sent at 46.72 seconds, then it aborts at 48.72 seconds with a separate unsupported dynamic s_setpc_b64 at program counter 0x000003e0 (shader stage 5). This final run does not independently establish a menu screenshot or gameplay. Its process exited and the temporary kernel setting was restored.
  • The same relinked title, assets, runtime configuration and RX 6650 XT are used. The dump lacks PlayGo chunk metadata, so both arms use the existing explicit APS5_PLAYGO_UNLISTED_CHUNKS=installed option. This is an installation assumption, not proof of complete chunk metadata.
  • No gameplay, visual-correctness or performance claim. No local Windows or other-GPU run and no Khronos validation-layer run is claimed.
  • Windows feedback from LeandroLP23 and akkadbakkad89 identified missing CTest properties: startup DLL failure or dialog/hang under CTest, while direct invocation passed. Follow-up 33f65a7eba adds this test to its siblings' shared shader-cache setting, 30-second timeout, source working directory and Windows runtime-library PATH. Local rebuild and both focused CTests pass (2/2, no skips, 2.99 s); generated CTest properties checked. Independent Windows validation of the corrected registration is recorded below.
  • Conventions and whitespace checks pass. Overlap tooling reports no confirmed overlap; 59 comparisons are unavailable because those branches conflict with main. Reviewed their shared-file diffs for this decoder/test addition; no duplicate infinite-depth-bound implementation or prerequisite identified. Those PR combinations were not built.

Evidence: test logs, negative control, native summary and pre-rebase menu screenshot, assets prefixed crimson-depthbounds-.

savvaniss independently reports all 19 Graphics.cpp tests passing three runs each, including agc_driver_depth_bounds_state, on Windows 11 Pro 26300, Intel UHD 770 (32.0.101.7088) and AMD RX 9070 XT (32.0.31041.1004), WinLibs GCC 15.2.0 r7 Release. The tested composition merges exact head 33f65a7eb into main f3059421f, with shader caching disabled and serial CTest. The control without this implementation fails agc_driver_graphics at non-finite DWORD 9 and agc_driver_covered_centroid_state on both GPUs. The corrected depth-bounds CTest registration passes on Windows. These decoder/mock tests do not establish GPU rendering or title performance.

Checklist

  • Based on current main; no other open PR implements the same functions
  • One topic per PR; follow-ups go in a new PR
  • No comments in code except technical debt
  • Unimplemented paths throw (NotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file
  • No notes, investigation .md files or images added to the repository (attach them to this PR)
  • New third-party code is a submodule built from source
  • Generic behaviour, not specific to one title
  • Depends on: none
  • Fixes: none
  • Unblocks: PPSA03568 startup to main menu; no existing Crimson Spires discussion found
  • GPUs tested: AMD Radeon RX 6650 XT, RADV Mesa 26.2.4, Arch Linux 7.2.9-arch1-1 (native startup); automated checks use mocks
  • AI-assisted: yes

@github-actions

github-actions Bot commented Oct 18, 2026 •

Copy link
Copy Markdown

Some comparisons could not be completed because a pull request conflicts with the base branch. Review these shared files manually before concluding that there is no overlap.

Pull request Shared files not compared
PR 1191 core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
PR 1368 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 1395 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 2434 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 4040 core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 5021 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 5371 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 5426 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 5431 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 5441 core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 5499 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 5500 core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 5925 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6044 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6146 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6185 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6186 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6187 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6188 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6192 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6194 core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6209 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6235 core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6280 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6300 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6412 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6481 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6501 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6548 core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6611 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6636 core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6682 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6683 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6747 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6788 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6808 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6868 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6937 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6946 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6947 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 6970 core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6972 core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 6977 core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
PR 7002 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7048 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7085 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 7201 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7223 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7256 core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 7332 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 7395 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7446 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7457 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7464 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7505 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7514 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7604 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7615 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7642 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7644 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7647 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 7668 core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 7862 core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 7927 core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 7948 core/libs/prx/libSceAgcDriver/CMakeLists.txt
core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
PR 8014 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 8099 core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 8105 core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
PR 8160 core/libs/prx/libSceAgcDriver/CMakeLists.txt
PR 8161 core/libs/prx/libSceAgcDriver/CMakeLists.txt

@LeandroLP23

Copy link
Copy Markdown
Contributor

On Windows the new agc_driver_depth_bounds_state test cannot start under ctest. It exits 0xc0000135 (a DLL not found), 3 of 3. Radeon 860M (RDNA 3.5, driver 32.0.13058.8001), Windows 11 26300, WinLibs GCC 15.2.0 r7, Release, BUILD_TESTING=ON. Build: main c3591adf9 with #7629, #7630 and #7627 merged together (each merge clean, built once).

Its registration has no set_tests_properties. Its neighbours agc_driver_undithered_alpha_to_coverage_state and agc_driver_msaa_dcc_state get ENVIRONMENT "ANYPS5_NO_SHADER_CACHE=1", TIMEOUT 30 and WORKING_DIRECTORY, and on WIN32 the PATH=path_list_prepend:$<TARGET_FILE_DIR:libc> modification. Without the PATH the test executable doesn't find the system libraries. Adding the new test to those two set_tests_properties calls should be enough. Run by hand with that PATH, agc_driver_graphics_tests --depth-bounds-state prints Depth bounds state checks passed, 3 of 3, and agc_driver_graphics passes under ctest.

AI-assisted

@akkadbakkad89

Copy link
Copy Markdown
Contributor

Windows issue at head 964dcbef4: agc_driver_depth_bounds_state hangs under ctest on both NVIDIA RTX 3070 (driver 617.42) and Intel UHD 630 (igvk64) - it exhausts the timeout while agc_driver_graphics itself passes in ~9 s on both.

The test logic is fine: running agc_driver_graphics_tests.exe --depth-bounds-state by hand finishes in ~1 s with "Depth bounds state checks passed". The hang is the registration: the new add_test (CMakeLists.txt:1679) never gets the if(WIN32) ... ENVIRONMENT_MODIFICATION "PATH=path_list_prepend:$<TARGET_FILE_DIR:libc>" that agc_driver_alpha_to_coverage_state, agc_driver_undithered_alpha_to_coverage_state and agc_driver_msaa_dcc_state receive in the block below. Without it the exe cannot resolve libc.prx/libSceAgcDriver.prx at load, Windows shows the entry-point dialog, and the process blocks on the popup until ctest kills it.

Suggested fix: add agc_driver_depth_bounds_state to that WIN32 set_tests_properties list (and matching TIMEOUT/SKIP_RETURN_CODE/WORKING_DIRECTORY properties like its siblings). Linux never needs it, which is why it passed on your setup.

Windows 11, MinGW (WinLibs GCC 15.2.0), Release.

@github-actions github-actions Bot added build agc libSceAgc* labels Oct 18, 2026
@JJenkx

JJenkx commented Oct 18, 2026

Copy link
Copy Markdown
Contributor Author

Fixed the registration in 33f65a7eba: agc_driver_depth_bounds_state now shares the shader-cache setting, 30-second timeout, source working directory and Windows runtime-library PATH with the adjacent state tests.

Thanks LeandroLP23 and akkadbakkad89 for isolating this. The graphics target rebuild and both focused CTests pass on Linux (2/2, no skips, 2.99 s); conventions and whitespace pass. I checked the generated Linux CTest properties, but cannot claim a corrected Windows run locally. Please rerun the focused CTest on Windows when convenient. The description records the original Windows failure and the remaining rerun requirement.

@akkadbakkad89

Copy link
Copy Markdown
Contributor

Cross-linking the systematic fix that grew out of this report: #7645 (tracks issue #7637). The narrow registration fix you pushed covers this test; #7645 additionally stages the .prx runtime files next to every test exe, so a future registration that misses the WIN32 prepend will not hang on the loader dialog.

akkadbakkad89 pushed a commit to akkadbakkad89/AnyPS5 that referenced this pull request Oct 18, 2026
…on Windows

A test registration that omits the WIN32 PATH prepend for libs/unpatched
makes the executable block on the Windows entry-point dialog (0xC0000139)
until ctest reports a timeout; the dialog is invisible to headless and CI
runs. The prepend is per-test boilerplate repeated across ~95 CMakeLists
files, so new registrations keep missing it (boykopovar#7627).

add_test_executable now copies $<TARGET_RUNTIME_DLLS> next to the exe at
link time (copy_if_different rather than copy -t, whose -t option older
cmake -E lacks; the exe itself is listed as a source so a target with no
shared-library dependencies still receives a valid command and copies
nothing). The loader resolves the .prx imports from the executable
directory ahead of PATH, so no registration needs the prepend and a test
exe can be run by hand with no environment setup. Fixes boykopovar#7637.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@github-actions github-actions Bot added the unblocks title Names a title ID on the Unblocks line label Oct 18, 2026
akkadbakkad89 pushed a commit to akkadbakkad89/AnyPS5 that referenced this pull request Oct 18, 2026
…on Windows

A test registration that omits the WIN32 PATH prepend for libs/unpatched
makes the executable block on the Windows entry-point dialog (0xC0000139)
until ctest reports a timeout; the dialog is invisible to headless and CI
runs. The prepend is per-test boilerplate repeated across ~95 CMakeLists
files, so new registrations keep missing it (boykopovar#7627).

add_test_executable now copies $<TARGET_RUNTIME_DLLS> next to the exe at
link time (copy_if_different rather than copy -t, whose -t option older
cmake -E lacks; the exe itself is listed as a source so a target with no
shared-library dependencies still receives a valid command and copies
nothing). The loader resolves the .prx imports from the executable
directory ahead of PATH, so no registration needs the prepend and a test
exe can be run by hand with no environment setup. Fixes boykopovar#7637.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
@savvaniss

Copy link
Copy Markdown
Contributor

Intel and AMD Windows data: with this PR the 19 tests built from tests/Graphics.cpp pass on an Intel UHD 770 and an AMD RX 9070 XT; without it, two of them fail on both.

Windows 11 Pro 26300, WinLibs GCC 15.2.0 r7, Release, every execution test built, ANYPS5_NO_SHADER_CACHE=1, serial CTest. Intel UHD Graphics 770 (8086:a780), driver 32.0.101.7088. AMD Radeon RX 9070 XT (1002:7550), driver 32.0.31041.1004, with VkCache emptied first. This head 33f65a7eb merged into main f3059421f. "Without" means this PR's test files on main f3059421f, with none of its other changes.

Tests, ×3 UHD 770 RX 9070 XT
This head: the 19 tests built from tests/Graphics.cpp, agc_driver_depth_bounds_state included 19 of 19 pass 19 of 19 pass
Without (18 tests; depth_bounds_state is not registered) agc_driver_graphics fails: non-finite register at DWORD 9; agc_driver_covered_centroid_state fails same 2 fail

Under CTest agc_driver_depth_bounds_state passed here in 0.01 s, with this head's ENVIRONMENT_MODIFICATION registration (#7637).

I also ran full CTest with this PR and the 14 other open AGC PRs I tested in the same batch merged together (#7647, #7641, #7630, #7603, #7600, #7591, #7579, #7535, #7533, #7474, #7462, #7050, #7048, #7650). Neither GPU showed a failure beyond main's own, except #7650's new test.

AI-assisted: yes (Claude Code)

@github-actions github-actions Bot added the needs rebase Conflicts with main, rebase needed label Oct 19, 2026
@JJenkx
JJenkx force-pushed the fix/agc-infinite-depth-bounds branch from 33f65a7 to 8bd880c Compare October 19, 2026 08:36
@github-actions github-actions Bot removed the needs rebase Conflicts with main, rebase needed label Oct 19, 2026
@adriadam10 adriadam10 self-assigned this Oct 19, 2026
@adriadam10
adriadam10 merged commit 6c94343 into boykopovar:main Oct 20, 2026
13 of 14 checks passed
@adriadam10

Copy link
Copy Markdown
Collaborator

Checked the decoder change against current main (NaN still rejected, infinities preserved only for DB_DEPTH_BOUNDS_MIN/MAX, other registers keep the finite check), that ValidateDepthBounds still requires VK_EXT_depth_range_unrestricted outside [0, 1], the new test rows (each infinity, both, NaN at both endpoints, non-finite register 0x00b still rejected) and the ctest registration properties, including the Windows PATH; merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agc libSceAgc* build unblocks title Names a title ID on the Unblocks line

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants