nmzik
d34e30d892
refactor(shader): emit SPIR-V declarations on demand
2026-08-21 03:32:47 +02:00
Senaxx
7e42513faf
perf(shader): cache analysis ( #259 )
...
perf(shader): cache SPIR-V requirement analysis
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-08-19 00:50:13 +02:00
nmzik
5d83ce82af
renderer: track and materialize deferred DCC clears
...
Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com >
2026-08-18 19:10:36 +02:00
shadowbeat070
4fb72e9db7
graphics: add --gpu-assisted-validation and report fatal VkResults ( #268 )
...
* graphics: report the VkResult when a submit or fence wait fails
* graphics: add a --gpu-assisted-validation flag
* graphics: imply Vulkan validation for GPU-assisted validation
---------
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-08-18 14:44:48 +02:00
nmzik
8cfc9cd7a8
renderer: execute attachmentless PS side-effect draws
2026-08-18 14:03:36 +02:00
nmzik
c59a4565bc
renderer: simplify texture cache queries
...
Remove the duplicate texture page-overlap check and avoid shared-owner refcount traffic for already validated query candidates.
2026-08-18 03:53:45 +02:00
nmzik
79e424182b
renderer: simplify image buffer owner lookup
2026-08-18 03:53:45 +02:00
nmzik
fe867d03f6
renderer: remove duplicate buffer containment checks
2026-08-18 03:53:45 +02:00
nmzik
ae4e695425
renderer: remove duplicate texture candidate checks
2026-08-18 03:53:45 +02:00
nmzik
6407add888
renderer: align texture overlap retirement
2026-08-18 03:53:45 +02:00
nmzik
840d742230
renderer: align buffer synchronization flow
2026-08-18 03:53:45 +02:00
nmzik
a798e12d7f
renderer: reuse buffer overlap merge for images
2026-08-18 03:53:45 +02:00
nmzik
d80e914b34
renderer: align buffer overlap merging
2026-08-18 03:53:45 +02:00
nmzik
395c34ecab
renderer: recreate insufficient texture cache matches
2026-08-18 03:53:45 +02:00
nmzik
1e8317159e
renderer: align maybe-dirty image handling
2026-08-18 03:53:45 +02:00
nmzik
d0e08496be
renderer: handle clean DMA copies before overlap checks
2026-08-18 03:53:45 +02:00
nmzik
e24f29d514
renderer: diagnostics
2026-08-18 03:53:45 +02:00
nmzik
24b40d4c03
renderer: add warning log
2026-08-18 03:53:44 +02:00
nmzik
146253afb6
renderer&guest_gpu: minor cleanup
2026-08-18 03:53:44 +02:00
nmzik
c759236ccb
renderer: support depth-compatible uint image views
2026-08-18 03:53:44 +02:00
nmzik
ce39238210
renderer: preserve requested depth stencil view aspects
2026-08-18 03:53:44 +02:00
shadowbeat070
e239210279
Rewrite RenderDoc capture flow and host exceptions
2026-08-18 03:53:44 +02:00
nmzik
e1366eb91d
graphics: resolve Standard4KB color targets
2026-08-18 03:53:44 +02:00
nmzik
191cdff231
graphics: support tiled render target mip views
2026-08-18 03:53:43 +02:00
nmzik
af1ab60786
graphics: intersect texture views with resource mips
2026-08-18 03:53:43 +02:00
Senaxx
980d89f739
graphics: support dynamic storage mip writes
2026-08-18 03:53:43 +02:00
Senaxx
f785974cc1
graphics: accept storage mip ranges
2026-08-18 03:53:43 +02:00
nmzik
547b9b96cc
graphics: upload sparse PRT image backing
2026-08-18 03:53:43 +02:00
nmzik
989477efad
graphics: derive pixel stage activity from shader outputs
2026-08-18 03:53:43 +02:00
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