Claxten
5297abb7ac
shader: run non-amplifying NGG programs in mesh workgroups
2026-10-07 21:17:35 +04:00
Claxten
21a1346e27
graphics: route compact color exports through CB_SHADER_MASK
2026-10-07 21:17:35 +04:00
Claxten
3ba6ebae81
shader: initialize perspective sample barycentrics at SampleId
2026-10-07 20:44:46 +04:00
nmzik
0ee8800905
shader: read image descriptors indexed by workgroup
...
Co-authored-by: Çağatay Güçlü <33038942+defektu@users.noreply.github.com >
2026-10-05 02:24:51 +04:00
nmzik
0bef3fc0d3
gpu: fix separate alpha blending on swizzled render targets
...
Co-authored-by: Çağatay Güçlü <33038942+defektu@users.noreply.github.com >
2026-10-05 02:24:51 +04:00
nmzik
64eea6b32d
Reuse vertex shaders across equivalent vertex buffer layouts
2026-10-02 00:51:15 +04:00
nmzik
11001c97f7
shader: add distinct mesh shader type
2026-10-02 00:51:15 +04:00
nmzik
0ecd32299c
shader: cache registered code identities instead of parsing legacy footers
...
Co-authored-by: Mac <me@itsmemac.com >
Co-authored-by: Senaxx <michelbeld@gmail.com >
2026-10-02 00:51:15 +04:00
nmzik
73615c31ff
graphics: preserve logical alpha when blending reordered targets (PPSA02721)
...
Co-authored-by: EmK530 <admin@emk530.net >
2026-09-29 19:52:40 +04:00
nmzik
e57c37fa9c
graphics: consume vertex semantics directly from shader metadata
2026-09-29 13:57:32 +04:00
nmzik
0fbeac6d3f
graphics: compact shader keys and hash packed pipeline state
2026-09-29 13:57:32 +04:00
nmzik
b43bf9f7fb
graphics: store vertex attribute bindings without duplicated arrays
2026-09-29 13:57:32 +04:00
nmzik
16b83a034c
Shader: execute RDNA2 FP64 shadow arithmetic and log denorm limits
...
Shader: disable FP64 denorm preservation controls for now
2026-09-26 15:15:35 +04:00
nmzik
cf423df624
shader: remove per-draw vertex diagnostic atomics
2026-09-25 21:15:41 +04:00
Romain Hedouin
d646fd92d1
graphics: hoist loop-invariant checks out of draw/attrib hot paths ( #807 )
...
* graphics: hoist loop-invariant checks out of draw/attrib hot paths
DrawIndirectMulti recomputed the index_type_and_size switch on every
sub-draw of a multi-draw-indirect call, and ShaderApplyAttribSemantics
re-checked the debug-dump config flag on every vertex attribute. Both
values are invariant across their respective loops, so compute them
once before iterating instead.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
* graphics: cache vertex buffer descriptor size in AcquireVertexBuffers
VertexBufferDescriptorSize was computed twice per vertex-buffer slot
on every draw call: once while collecting guest ranges, and again
while rebuilding slot bindings. Both calls use identical inputs, so
cache the first pass's result and reuse it in the second.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
---------
Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com >
2026-09-24 21:02:23 +04:00
nmzik
03c55e5712
Keep shader user data inline for cached programs
2026-09-23 15:41:02 +04:00
nmzik
476204cd4b
Initialize native NGG vertex launch state and wave size
2026-09-22 11:11:36 +04:00
nmzik
6493674726
shader: dual-source blending (Vulkan)
2026-09-18 09:11:55 +04:00
nmzik
5dc644edb4
clean up graphics helpers
2026-09-17 20:35:36 +04:00
nmzik
cc8e02380f
remove magic_enum wrappers
...
Co-authored-by: Saadi <cosxmos@gmail.com >
2026-09-17 20:35:36 +04:00
nmzik
7c9148dd47
Support triangle fans in PS5 geometry shaders
...
Keep the fan center across subgroups and reuse the existing index fetch.
2026-09-16 08:42:47 +04:00
nmzik
0d9e95d96a
Fix centroid interpolation weights
...
PPSA03792
2026-09-15 19:51:30 +04:00
nmzik
968cf3c03f
Use the correct pixel shader wave size
2026-09-14 20:29:20 +04:00
nmzik
87971a28f5
gpu: isolate tessellation analysis and SPIR-V emission
2026-09-14 06:58:32 +04:00
nmzik
7516068662
gpu: compile RDNA2 tessellation through native LS HS and TES stages
2026-09-14 06:58:32 +04:00
nmzik
ef0155636a
shader: support single and split NGG shaders for PPSA11142
2026-09-08 21:26:59 +04:00
nmzik
2b3993a595
shader: share emitter helpers
2026-09-08 21:26:59 +04:00
nmzik
1fd07c2c83
shader: assemble point inputs for merged geometry shaders
2026-09-07 05:04:15 +04:00
nmzik
cf0cbee02d
shader: fix vertex attribute identity swizzles
2026-09-06 05:47:20 +04:00
nmzik
9918dc2591
render: set merged GS user data from shader registers
...
Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com >
2026-09-05 15:08:20 +04:00
nmzik
3ab372ccec
render: build indexed triangles for merged ES/GS shaders
...
Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com >
2026-09-05 14:59:28 +04:00
nmzik
b96a30ed88
shader: keep fragment layer values under lane masks
...
Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com >
2026-09-05 11:43:49 +04:00
nmzik
3213934d42
shader: run merged geometry stages as mesh shaders
...
Co-authored-by: Brandon Strong <brandostrong@gmail.com >
Co-authored-by: fxpw <fxpw@outlook.com >
Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com >
2026-09-05 08:32:23 +04:00
nmzik
98200fed19
shader: rework resource specialization and optimize pipeline caching
2026-09-03 03:04:17 +02:00
nmzik
0c4dfd565e
renderer: emulate clip-disabled screen-space positions
2026-09-01 21:39:11 +04:00
nmzik
63dd3917e2
reduce runtime logging
2026-09-01 20:50:57 +04:00
nmzik
1df06e230d
guest_gpu: remove stale PS4/GCN era gpu registers
2026-08-31 20:58:35 +04:00
nmzik
66ca225c76
shader: require explicit recompiler resource data
2026-08-31 10:26:08 +04:00
nmzik
af8aecfdde
shader: remove recompiler error-string propagation
2026-08-31 05:31:41 +04:00
nmzik
c167375fe1
shader: centralize program compilation and permutation caching
2026-08-27 13:37:46 +02:00
nmzik
e738535294
graphics: add RDNA2 FLAT BDA buffer cache and faults
2026-08-27 03:45:41 +02:00
nmzik
ffa69d48de
shader: remove second IR layer
2026-08-26 08:49:39 +02:00
nmzik
3e25eb0998
Fix wave64 LDS synchronization on subgroup32 hosts
2026-08-23 00:46:37 +02:00
nmzik
a2baaccc6e
shader: fix auxiliary position exports
2026-08-22 02:58:35 +02:00
nmzik
5e64efce4f
graphics: support RDNA2 custom pixel interpolation
...
Co-authored-by: Senaxx <Senaxx@users.noreply.github.com >
2026-08-21 23:33:40 +02:00
nmzik
bad6726f5e
Rewrite descriptor bindings and unify graphics push constants
2026-08-21 22:28:10 +02:00
nmzik
49ea1680f8
graphics: use per-invocation shader masks
2026-08-21 08:03:22 +02:00
nmzik
d0a4c908a1
shader: align address-memory buffer bindings
2026-08-21 03:32:49 +02:00
nmzik
719e20d470
shader: support bit-packed image surfaces
2026-08-21 03:32:49 +02:00
Senaxx
56a15c2036
Implement RDNA2 per-invocation scratch memory
2026-08-21 03:32:47 +02:00