Repository navigation
feat(libSceAgcDriver): support primitive type 3 (line strip) - #4587
pushkarreddyy wants to merge 1 commit into
Conversation
6fa9818 to
de88d82
Compare
|
Calling on @oneandonlydean and @adriadam10 for review clearance / merge:
Ready for review clearance and merge! Thank you! |
de88d82 to
d2894d4
Compare
|
Build and test run, since the description lists only the conventions check. Setup: Windows 11 (26200), WinLibs GCC 15.2.0 r7, Release, CI configure flags, an RTX 4070 Laptop GPU and an Intel Raptor Lake-S iGPU. The head d2894d4 merged into
#4584 decodes primitive type 3 as Written with AI assistance. |
d2894d4 to
d677e1f
Compare
|
Thanks @kr4y4 for the independent dual-GPU verification across both the RTX 4070 Laptop GPU and Intel Raptor Lake-S iGPU (1018/1018 passing on both)! Rebased onto latest |
What
DecodeStatepreviously threw for user config register0x242(VGT_PRIMITIVE_TYPE) withAGC graphics: unsupported primitive type 3whenever a draw issued a line-strip topology.This PR adds
case 3mapping GCN/RDNA primitive type 3 toVK_PRIMITIVE_TOPOLOGY_LINE_STRIP:VK_PRIMITIVE_TOPOLOGY_LINE_STRIPinDecodeState(State.cpp).pointsOrLinesinState.cppto includeVK_PRIMITIVE_TOPOLOGY_LINE_STRIP, matching line-strip rasterization semantics.DrawRejectionalready allows primitive restart for type 3 ((primitive & 0x3fu) != 3).core/libs/prx/libSceAgcDriver/tests/Graphics.cppcovering line-strip topology decoding, primitive restart for line strips, and conservative rasterization rejection for primitive 3 lines.Fixes #4572.
Tested
@kr4y4): Built and tested on Windows 11 26200 (MSYS2 MinGW-w64 GCC 15.2.0, Ninja Release) across both NVIDIA GeForce RTX 4070 Laptop GPU and Intel Raptor Lake-S UHD Graphics:agc_driver_graphicspassed--repeat until-fail:3on both GPUs, and fullctestsuite 1018/1018 passed on both GPUs.stateTestscovers primitive type 3 decoding toVK_PRIMITIVE_TOPOLOGY_LINE_STRIPand primitive restart validation;ConservativeRasterizationTestsverifies line-strip conservative rasterization rejection (VGT_PRIMITIVE_TYPE=0x3).python tools/check_conventions.py --base origin/main(0 findings, 0 errors, 0 comments in C++).Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed in TechnicalDebt.mdfiles or images added to the repository (attach them to this PR)