nmzik
6d273e4d9c
graphics: accept forced HTile resummarization
2026-08-18 03:53:43 +02:00
Senaxx
d7fd4a2864
graphics: accept asymmetric Z clip state
2026-08-18 03:53:42 +02:00
nmzik
4f1bc505cc
graphics: support depth-tiled color targets
2026-08-18 03:53:42 +02:00
nmzik
30d57bed06
graphics: honor primitive restart state
2026-08-18 03:53:42 +02:00
nmzik
965c30956d
graphics: clamp storage buffers to committed memory
2026-08-18 03:53:42 +02:00
nmzik
b42380ced6
shader_recompiler: add SSA
2026-08-18 03:53:41 +02:00
nmzik
9a76719544
gpu: validate depth and cube texture descriptors
...
Accept SDK-valid depth sampler modulation and validate cube storage images as complete six-layer groups.
2026-08-11 16:45:32 +02:00
nmzik
97514884b1
Unify stack walking
2026-08-11 16:12:38 +02:00
nmzik
21aa7b66ce
graphics: replace raw GPU enum values with typed formats
2026-08-11 16:12:38 +02:00
nmzik
11b95bed20
graphics: simplify render target format and color mapping resolution
2026-08-11 16:12:38 +02:00
nmzik
4cd6132758
gpu: allow byte-granular memory DMA
2026-08-09 05:31:18 +02:00
nmzik
3005a210c6
renderer: ignore inactive HTile depth address
2026-08-08 23:55:45 +02:00
DeathWhispers
7ff9e4907f
Don't declare colorWriteEnable dynamic state on depth-only pipelines ( #160 )
...
fix(gpu): drop colorWriteEnable dynamic state on depth-only pipelines
Pipelines were created with VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT
unconditionally on non-Apple platforms, but the draw path only calls
vkCmdSetColorWriteEnableEXT when there is at least one color attachment.
A depth-only draw therefore reached vkCmdDrawIndexed with the dynamic
state declared and never set, which violates
VUID-vkCmdDrawIndexed-None-07749.
With validation enabled the error is fatal, so any title that issues a
depth-only pass aborts. The launcher enables validation by default
(vulkan_validation_enabled = true), so this is the default configuration:
PAC-MAN WORLD Re-PAC crashes from the launcher while the same build runs
normally with --vulkan-validation false.
Gate the declaration on the same color_count the draw path uses. Both
sides read state.color_count from the same draw, so the two conditions
are now identical by construction.
2026-08-08 08:21:18 +02:00
nmzik
698c9f802f
renderer: remove global BufferCache locking
2026-08-08 08:02:35 +02:00
nmzik
d4f8338937
renderer: lower masked stencil xor exactly
2026-08-07 19:13:21 +02:00
nmzik
5125cd09c7
growable command buffer pool
2026-08-07 18:26:42 +02:00
nmzik
81e52df7bf
precompute scissor rules (optimization)
2026-08-07 17:54:00 +02:00
nmzik
7907a50817
minor optimizations
2026-08-07 09:26:37 +02:00
nmzik
ace549ab21
reduce complexity of buffer overlap detection
2026-08-06 23:46:47 +02:00
nmzik
0cbae39e41
remove double locking. small perf boost
2026-08-06 23:23:28 +02:00
nmzik
e9f5da27f8
gpu: implement polygon offset
...
Co-authored-by: Pouare514 <julienaulycee@gmail.com >
2026-08-06 22:02:19 +02:00
nmzik
389fd1e5be
refactor gpu: consolidate texture tile layout calculations
2026-08-06 20:03:42 +02:00
nmzik
869329ee68
renderer: minor optimizations
2026-08-05 19:08:18 +02:00
nmzik
b2963aa6e0
graphics: make DispatchDirect asynchronous
2026-08-05 14:49:45 +02:00
nmzik
9859b3e1d6
defer image refresh to final acquisition
2026-08-05 12:52:36 +02:00
nmzik
b6af7c73ec
graphics: support Standard256B storage textures
2026-08-05 05:09:28 +02:00
nmzik
e6b4707a5d
renderer: support R8 uint render targets
2026-08-05 02:59:28 +02:00
nmzik
c13a1d752b
renderer: remove duplicate vertex and index buffer rebind
2026-08-04 02:26:50 +02:00
nmzik
51d0e02543
perf: sync only GPU-dirty readbacks
2026-08-04 02:26:50 +02:00
nmzik
26f0c7b0bf
perf: reduce texture registration and lookup overhead
2026-08-03 08:18:05 +02:00
nmzik
86a586025f
renderer: expand rectangle lists with tessellation
...
Remove the legacy NGG rectangle workaround and its configuration toggle.
2026-08-03 00:35:02 +02:00
nmzik
06cbd602c1
graphics: preserve indirect instance state
2026-08-03 00:35:02 +02:00
nmzik
055d0920d7
renderer: allow array storage views at nonzero mips
2026-08-03 00:35:02 +02:00
nmzik
f2ee98fe31
renderer: separate tiled and linear texture capacities
2026-08-03 00:35:02 +02:00
nmzik
207cef9602
renderer: report invalid texture upload layout
2026-08-03 00:35:02 +02:00
nmzik
fb5ecec455
renderer: ignore stale stencil state for depth-only targets
2026-08-02 14:14:32 +02:00
nmzik
fc8d2a3b83
guest_gpu: remove memory-unmap submission deadlock + remove legacy agc buffering
2026-08-02 13:26:29 +02:00
nmzik
59b8fad341
graphics: support 3D color render targets
2026-08-02 09:38:57 +02:00
nmzik
b877b4be9c
graphics: perf - batch GPU page watcher updates at 4 MiB granularity
2026-08-02 08:39:50 +02:00
nmzik
9da7fc5dd6
renderer: minor optimizations
2026-08-02 08:34:44 +02:00
nmzik
da0d33224d
renderer: eliminate extra copy for small streaming buffers
2026-08-02 08:34:44 +02:00
nmzik
4631b96178
perf(gpu): run dirty-page validation only in debug builds
2026-08-02 04:58:56 +02:00
Claxten
bc436548a9
graphics: support packed 10-10-10-2 uint buffers
...
Signed-off-by: Claxten <claxten10@gmail.com >
2026-08-02 01:44:21 +02:00
nmzik
a65d17a5d6
renderer: skip debug checks when stencil&depth is not active
2026-08-01 00:22:24 +02:00
nmzik
f830d6b2e4
renderer: remove legacy code left from refactoring
2026-07-31 23:13:48 +02:00
nmzik
d68a477276
renderer: broaden compatibility
2026-07-31 22:24:56 +02:00
nmzik
8977d4d2f0
shader: add descriptor log
2026-07-31 21:29:26 +02:00
nmzik
846002c5eb
shader: fix invalid texture descriptors and add missing format
2026-07-31 17:30:31 +02:00
nmzik
d8a4c83cc7
format src and tests with clang-format
2026-07-31 11:36:12 +02:00
nmzik
68be13345a
fix(shader): support multisampled depth image loads
2026-07-31 11:36:12 +02:00