Philip Rebohle
fcabffc1e5
[dxvk] Add store op optimization for image discards in tiler mode
2025-02-10 16:13:31 +01:00
Philip Rebohle
fa2d791d79
[dxvk] Use resolve attachments if possible
2025-02-10 16:13:31 +01:00
Philip Rebohle
215cebc019
[dxvk] Remove superfluous function declaration
2025-02-06 14:29:19 +01:00
Philip Rebohle
a413eb0843
[dxvk] Only end render pass in invalidateImage if currently bound
...
Not really needed otherwise.
2025-02-05 22:49:25 +01:00
Philip Rebohle
2ee598b4af
[dxvk] Add latency tracker to context
2025-01-25 18:02:20 +01:00
Philip Rebohle
1b9ea8c6e3
[dxvk] Add debug regions for render passes
2025-01-09 16:25:46 +01:00
Philip Rebohle
d9b5f09239
[dxvk] Add debug region stack
...
Ensures that we correctly begin and end app-provided regions within
each command buffer.
2025-01-09 16:25:46 +01:00
Philip Rebohle
b62a8c78b4
[dxvk] Add context feature flag for debug utils support
2025-01-09 16:25:46 +01:00
Philip Rebohle
2507820339
[dxvk] Add support for resource debug names
2025-01-09 16:25:46 +01:00
Philip Rebohle
0e14fff749
[dxvk] Introduce tracking ID for resource tracking
...
Replaces the existing bit masks, which is possible now because the
CS thread is the only place where submissions happen now.
This way we only count each resource once per submission, or twice
in case a read access is followed by a write.
This also fixes a potential tracking bug with shader-writeable resources.
2024-10-30 09:41:49 +01:00
Philip Rebohle
34b82a2b5b
[dxvk] Add dedicated command buffers for initial layout transitions
...
This helps batch initial layout transitions for image uploads.
2024-10-28 23:03:46 +01:00
Philip Rebohle
c8ab88e8f5
[dxvk] Add helper for out-of-order resource transfers
2024-10-28 23:03:46 +01:00
Philip Rebohle
f0054e7e65
[dxvk] Add command list tracking to resource
2024-10-28 23:03:46 +01:00
Philip Rebohle
d535e2964f
[dxvk] Remove obsolete comments
2024-10-25 19:22:58 +02:00
Philip Rebohle
7a693ed41a
[dxvk] Implement per-submission resource relocation
2024-10-24 12:31:18 +02:00
Philip Rebohle
4af31a9d64
[dxvk] Remove context type concept
...
We only have a single context per device now.
2024-10-24 12:30:54 +02:00
Philip Rebohle
4c0cbbef6a
[dxvk] Factor DxvkResource code into DxvkPagedResource
...
And remove the now obsolete code.
2024-10-18 12:42:33 +02:00
Philip Rebohle
fb6e0ad6c1
[dxvk] Remove useless DxvkMarker class
2024-10-16 20:57:50 +02:00
Philip Rebohle
f8b9efd11e
[dxvk] Fix misaligned image uploads on transfer queue
2024-10-16 11:38:42 +02:00
Philip Rebohle
8ab6b8616b
[dxvk] Track image initialization
2024-10-16 11:32:55 +02:00
Philip Rebohle
af4ec3c63d
[dxvk] Normalize render target layouts when binding framebuffer
...
No reason to use ATTACHMENT_OPTIMAL when the default layout is GENERAL.
2024-10-16 11:32:55 +02:00
Philip Rebohle
708d23ca4b
[dxvk] Use new barrier batch and barrier tracker for main command buffer
2024-10-16 11:32:55 +02:00
Philip Rebohle
56a58095fe
[dxvk] Use new barrier helpers for shader execution barriers
2024-10-16 11:32:55 +02:00
Philip Rebohle
856a84e6fd
[dxvk] Use new barrier helpers in copyImageToBufferCs
...
And actually rename that function to make sense.
2024-10-16 11:32:55 +02:00
Philip Rebohle
bbe7767475
[dxvk] Add helpers to flush pending execution barriers if needed
2024-10-16 11:32:55 +02:00
Philip Rebohle
318e79c2ad
[dxvk] Use new barrier batch for init and sdma barriers
...
No tracking needed here.
2024-10-16 11:32:55 +02:00
Philip Rebohle
b771bef837
[dxvk] Add helper functions to record pending barriers
2024-10-16 11:32:55 +02:00
Philip Rebohle
d154a684ad
[dxvk] Remove acquire barrier set
2024-10-16 11:32:55 +02:00
Philip Rebohle
ef79f8a617
[dxvk] Use new layout transition helper in initImage
...
Removes another barrier set.
2024-10-16 11:32:55 +02:00
Philip Rebohle
1e8631189c
[dxvk] Use new layout transition helper in uploadImageHw
...
Allows us to get rid of a barrier set.
2024-10-16 11:32:55 +02:00
Philip Rebohle
8955d2a285
[dxvk] Add various helpers to emit image layout transitions
2024-10-16 11:32:55 +02:00
Philip Rebohle
d00669cb52
[dxvk] Rename DxvkGpu{Event,Query} to Dxvk{Event,Query}
...
The old name only ever existed because DXVK had two separate implementations
of these prior to version 1.1. Let's name them back so that more sensible
names are available for internal use.
2024-10-13 12:08:35 +02:00
Philip Rebohle
ac1dfbacb6
[dxvk] Move image initialization to init command buffer
2024-10-08 17:46:18 +02:00
Philip Rebohle
e137f049ee
[dxvk] Make buffer<->image copy format checks more robust
...
There are situations where the source format may not match
the image format but the copy is valid nonetheless.
2024-10-08 17:46:18 +02:00
Philip Rebohle
e6f90b8003
[dxvk] Remove legacy depth/stencil repacking code
2024-10-08 17:46:18 +02:00
Philip Rebohle
ad1f70beea
[dxvk] Support format conversion in copyImageToBuffer
2024-10-08 17:46:18 +02:00
Philip Rebohle
f67c8dd1da
[dxvk] Support format conversion in copyBufferToImage
2024-10-08 17:46:18 +02:00
Philip Rebohle
501b0991da
[dxvk] Remove per-context staging buffer
...
No longer used.
2024-10-08 17:46:18 +02:00
Philip Rebohle
725a04b954
[dxvk,d3d11] Refactor uploadImage to consume a staging buffer
...
And also handle format differences.
2024-10-08 17:46:18 +02:00
Philip Rebohle
c92ee8ee07
[dxvk,d3d11] Refactor uploadBuffer to consume a staging buffer
2024-10-08 17:46:18 +02:00
Philip Rebohle
bf9dfc77ce
[dxvk] Add context method for WSI synchronization
...
Mostly convenience, but we do want to get rid of Begin/EndRecording
at some point.
2024-10-04 12:58:55 +02:00
Philip Rebohle
1c06431e18
[dxvk] Add method to use a context's command list directly
...
Also provide the descriptor pool for convenience.
2024-10-04 12:58:55 +02:00
Philip Rebohle
11f8dc0818
[dxvk] Add functions to lock in and query GPU buffer addresses
2024-09-30 10:29:27 +02:00
Philip Rebohle
150c40280f
[dxvk] Get rid of internal blit samplers
2024-09-30 10:29:27 +02:00
Philip Rebohle
67d1285b08
[dxvk] Refactor meta blits
2024-09-30 10:29:27 +02:00
Philip Rebohle
8c67af680c
[dxvk] Refactor meta resolves
2024-09-30 10:29:27 +02:00
Philip Rebohle
2c176f4950
[dxvk] Refactor meta image copies
2024-09-30 10:29:27 +02:00
Philip Rebohle
56a07b5bd0
[dxvk] Add function to recreate image views with guaranteed compatibility
2024-09-30 10:29:27 +02:00
Philip Rebohle
bfbb7987b2
[dxvk] Add functions to recreate images with additional usage info
...
Useful when we don't know in advance which usage flags are required
and don't want to set them preemptively for performance reasons.
2024-09-30 10:29:27 +02:00
Philip Rebohle
53f14e2914
[dxvk] Add functions to move resources to a different allocation
...
Basically a batched copy to use when one or more resources are being
recreated for any reason.
2024-09-30 10:29:27 +02:00