Claxten
9f83fd5f0c
graphics: apply indirect draw offsets to guest user SGPRs
2026-10-07 21:17:35 +04:00
nmzik
cdb64bfd4f
graphics: share indirect draw handling and honor indexed sources
2026-10-06 00:35:02 +04:00
nmzik
840b9f5753
Fix unnecessary queue drains in predication and suspend points
2026-09-30 16:51:40 +04:00
Pcniado
bec67b7863
Fix HITMAN 3 boot, layered presentation, and socket imports ( #851 )
...
* videoout: synchronize layered flips with premultiplied composition
* shader: support unsigned FFBH subword sources
* shader: apply cube-face result scaling
* shader: prune buffer reads proven out of bounds
* net: implement send and receive exports with shared socket handling
---------
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-09-27 02:13:30 +04:00
nmzik
bfdbba3aa4
graphics: share EOP clock and immediate write handling
...
Co-authored-by: Mac <me@itsmemac.com >
2026-09-25 16:14:40 +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
d6b2abe26f
Remove redundant command buffer checks
2026-09-23 15:41:02 +04:00
nmzik
79530b4c5e
Read indirect dispatch counts from GPU buffers
...
Co-authored-by: Mac <me@itsmemac.com >
2026-09-23 15:41:02 +04:00
nmzik
8252caee04
Quiet draw and audio logs
2026-09-23 15:32:30 +04:00
nmzik
a6a56c8a44
Remove obsolete partial indirect draw warnings
2026-09-22 11:38:50 +04:00
Beru
228cf3fbf4
Build the launcher on Qt below 6.6 and cap the reference-clock log ( #653 )
...
* Fix launcher build on Qt versions below 6.6
QVulkanInstance::NoPortabilityDrivers is only available since Qt 6.6, so
guard its use the same way as the Apple-specific case.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
* Stop logging every reference-clock copy
CopyData of the clock counter runs on every GPU wait, so the handler wrote
one line per wait: a single SpongeBob boot that never reaches a frame logs
1312 of them, and the count grows with run time. Keep the first 64 lines
for diagnostics; the copy itself is unchanged.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
* Remove reference-clock logging comment
---------
Co-authored-by: YuhiAida <21134775+YuhiAida@users.noreply.github.com >
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
Co-authored-by: nmzik <Nmzik@mail.ru >
2026-09-17 10:30:47 +04:00
nmzik
629ae1ac05
Handle Z-pass predication and query waits
2026-09-15 20:15:39 +04:00
nmzik
79120d53ec
Handle chained PM4 buffers without recursion
2026-09-15 14:43:15 +04:00
nmzik
6a2987a7b2
Log the game title id
2026-09-15 14:09:24 +04:00
nmzik
d63fb62367
Fix async compute completion interrupts
2026-09-14 20:29:20 +04:00
nmzik
7c5473400e
config: simplify logging and profiler options. Change to Mailbox
2026-09-12 14:41:34 +04:00
nmzik
25a44371e3
refactor(graphics)
2026-09-12 13:40:10 +04:00
nmzik
994271e2f6
renderdoc: start and stop captures on the present thread
2026-09-05 09:54:42 +04:00
nmzik
f27a136430
Refactor(simplify) PM4 draw submission arguments
2026-09-03 22:23:13 +02:00
nmzik
fb4d97e8a9
graphics: fix PS5 NGG vertex and instance draw offsets
...
Refs: https://github.com/KytyPS5/KytyPS5/issues/130
2026-09-03 21:52:02 +02:00
nmzik
8072718462
graphics: replace command fences with timeline reuse
2026-08-26 10:03:43 +02:00
nmzik
fa891536df
graphics: do not copy PM4 streams & route executed packet interrupts properly
2026-08-25 23:22:54 +02:00
nmzik
c130d74efc
graphics: synthesize always-visible occlusion query results
2026-08-22 01:47:46 +02:00
nmzik
26c4168160
refactor(renderer): simplify buffer and texture cache ownership
2026-08-21 20:11:38 +02:00
nmzik
7022afa86e
commandProcessor: WriteData fix
2026-08-21 03:32:49 +02:00
nmzik
bac6bf65af
renderdoc: fix
2026-08-21 03:32:48 +02:00
Senaxx
a42e3bb09e
graphics: derive compute wave size from dispatch mode
2026-08-21 03:32:48 +02:00
nmzik
562f8a0895
fix(renderdoc): capture complete guest frames
2026-08-21 03:32:47 +02:00
nmzik
89fdb1214a
agc: ignore empty multi-DCB submissions
...
Co-authored-by: shadowbeat070 <70843316+shadowbeat070@users.noreply.github.com >
2026-08-18 03:53:45 +02:00
nmzik
146253afb6
renderer&guest_gpu: minor cleanup
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
e857e332ac
graphics: handle PS5 DMA_DATA prefetch
2026-08-18 03:53:44 +02:00
nmzik
6b306f64d5
graphics: execute valid PM4 rewind packets
2026-08-18 03:53:44 +02:00
nmzik
472c8213db
gpu: accept CB/DB release without GL2 writeback
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
1d5f3c8f66
gpu emulation: remove unnecessary Vulkan synchronization
2026-08-08 01:21:03 +02:00
nmzik
ec78afb966
Revert "gpu: queue AGC suspend points"
...
This reverts commit 90bf3c9236 .
2026-08-07 23:58:09 +02:00
nmzik
90bf3c9236
gpu: queue AGC suspend points
2026-08-07 21:02:31 +02:00
nmzik
b2963aa6e0
graphics: make DispatchDirect asynchronous
2026-08-05 14:49:45 +02:00
nmzik
2f9fcc63c3
fix (agc): implement DCB context state operations
...
Co-authored-by: DeathWhispers <56944463+Death-Whispers-U@users.noreply.github.com >
2026-08-04 19:14:21 +02:00
nmzik
51d0e02543
perf: sync only GPU-dirty readbacks
2026-08-04 02:26:50 +02:00
nmzik
06cbd602c1
graphics: preserve indirect instance state
2026-08-03 00:35:02 +02:00
nmzik
fc8d2a3b83
guest_gpu: remove memory-unmap submission deadlock + remove legacy agc buffering
2026-08-02 13:26:29 +02:00
nmzik
4b4e3bf3cf
pm4: implement missing selectors
2026-07-31 19:45:47 +02:00
nmzik
d8a4c83cc7
format src and tests with clang-format
2026-07-31 11:36:12 +02:00
nmzik
a20cf5d298
refactor renderer
2026-07-27 02:27:29 +02:00
nmzik
a720b28b7f
graphics: cleanup
2026-07-23 23:21:26 +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
8a4600c5e9
graphics: fix initialization
2026-07-21 07:37:52 +02:00