Commit Graph

40 Commits

Author SHA1 Message Date
nmzik a6b61d7aa0 refactor(graphics): split renderer and recompiler into focused modules 2026-07-29 00:30:24 +02:00
nmzik 31fb3ec5af graphics: broaden storage image and view format compatibility 2026-07-27 10:12:41 +02:00
nmzik a20cf5d298 refactor renderer 2026-07-27 02:27:29 +02:00
nmzik 7638c25d76 renderer: replace generation retries with staged resource binding 2026-07-23 22:32:30 +02:00
nmzik f60007e923 refactor(gpu): use a single ordered PM4 scheduler 2026-07-22 23:15:03 +02:00
nmzik dbcb444c05 unify graphics and compute on one Vulkan queue 2026-07-22 17:44:38 +02:00
nmzik 0a5f78c727 graphics: refactoring #2 2026-07-21 07:37:52 +02:00
nmzik b51d4322cc Add GPU tilers/tests 2026-07-21 07:37:52 +02:00
nmzik 728b5b7d01 fix: render-target aliases were synchronously read back and copied through host memory twice 2026-07-21 07:37:52 +02:00
nmzik 42f634a751 fix fetch shader V_SAD_U32, video-out buffer overlap 2026-07-21 07:37:52 +02:00
nmzik 91690ac29e Implement texture-alias, mip-tail 2026-07-21 07:37:52 +02:00
nmzik 999f87576e graphics: add native PS5 MSAA and safe image allocation reuse 2026-07-21 07:37:52 +02:00
nmzik cbc11d2eaf Refactor graphics #1 2026-07-19 00:54:31 +02:00
nmzik 7905f2d12f graphics: migrate Vulkan backend to Vulkan-Hpp 2026-07-18 12:33:21 +02:00
nmzik 601c82a031 format source files 2026-07-18 09:01:52 +02:00
nmzik 62a92abc66 refactor cache/split responsibilities 2026-07-18 06:16:14 +02:00
nmzik 78431dba4a Handle stencil storage/depth transitions 2026-07-18 04:56:20 +02:00
nmzik 18479daabd Implement sparse multi-image page ownership 2026-07-18 03:31:36 +02:00
nmzik 94f85bc98a centralize swizzles 2026-07-18 01:41:44 +02:00
nmzik 2890d5f7bb improve image cache ownership and compatible views 2026-07-17 23:04:51 +02:00
nmzik c21a4100c8 support 16-bit float video-out 2026-07-17 19:36:06 +02:00
nmzik 866d761216 Support tiled storage readback 2026-07-17 19:00:06 +02:00
nmzik 5ed447818f Fix GPU memory protection and depth target invalidation 2026-07-17 18:26:10 +02:00
nmzik 75d20486ba Vulkan driver query caching 2026-07-17 18:09:20 +02:00
nmzik f9af3d15ff Split renderState header 2026-07-17 14:04:59 +02:00
nmzik 5aafe5159b remove redundant cache and tiler validation 2026-07-17 13:51:59 +02:00
nmzik c6ca491cf7 Synchronize GPU-owned VideoOut with formatted buffers 2026-07-17 12:58:31 +02:00
nmzik a290a06ea5 Support Standard64KB color render targets 2026-07-17 12:57:40 +02:00
nmzik 1416131a0a Support reciprocal ABGR sampled views 2026-07-17 12:55:33 +02:00
nmzik dd58deae15 D16S8 support 2026-07-17 08:39:57 +02:00
nmzik e903c93848 remove readback hacks, allows to read/write guest memory directly 2026-07-17 05:16:00 +02:00
nmzik 013e9a4485 Support single-channel float storage writes
Support sampled views of storage texture arrays

Support R8 UNORM storage writes
2026-07-17 03:31:43 +02:00
nmzik a96b5111e6 Refactor buffer image write classification 2026-07-16 22:42:06 +02:00
nmzik 41114be8da Fix layered image subresource synchronization 2026-07-16 22:26:40 +02:00
nmzik ae86249765 Support layered PS5 image alias transitions 2026-07-16 21:56:09 +02:00
nmzik f743a48c03 Preserve storage images across render target transitions 2026-07-16 19:58:11 +02:00
nmzik 9bed3bddd6 Support packed RGB10 sampled render-target views 2026-07-16 19:58:11 +02:00
nmzik 0d7c7510d7 Implement 0x12 CopyData, sampled-to-depth fix, stencil detailing 2026-07-16 19:58:11 +02:00
nmzik ceb7c6765e Advances to rendering: broad guards, fix tiling (thin 64KB), ignore noperspective 2026-07-16 19:58:11 +02:00
nmzik 147188b143 Initial commit 2026-07-16 10:21:41 +02:00