Philip Rebohle
c5aeb0f87a
[dxvk] Get rid of separate depth shaders for shader-based copies
...
We can export both depth and color in a single shader instead.
2024-03-19 19:32:12 +01:00
Philip Rebohle
51e0a56243
[dxvk] Use new pseudo-features where applicable
2022-09-04 18:28:27 +02:00
Philip Rebohle
37f31ae1e7
[dxvk] Clean up more code around object creation in meta passes
2022-07-18 14:50:29 +02:00
Philip Rebohle
cdf22a4086
[dxvk] Rename imageFormatInfo -> lookupFormatInfo
2022-07-15 17:25:13 +02:00
Philip Rebohle
686df3ec1b
[dxvk] Don't set scissor and viewport count for meta pipelines
...
Oversight from when we changed these to be unconditionally dynamic.
Fixes a bunch of validation errors.
2022-07-15 16:07:31 +02:00
Philip Rebohle
7677db3371
[dxvk] Replace VK_EXT_extended_dynamic_state with core feature
2022-07-14 21:21:34 +02:00
Philip Rebohle
3cfc3e7714
[dxvk] Replace VK_KHR_dynamic_rendering with core feature
2022-07-14 21:21:34 +02:00
Philip Rebohle
d657a526ae
[dxvk] Replace VK_EXT_shader_viewport_index_layer with core features
...
And enable them optionally in the backend, since we use this for meta
operations.
2022-07-14 21:21:34 +02:00
Philip Rebohle
4b82a05e05
[dxvk] Enable and use dynamic viewport and scissor rect count
2022-07-07 16:16:50 +02:00
Philip Rebohle
5b6a598ed6
[dxvk] Use dynamic rendering for resolve operations
2022-07-07 16:16:50 +02:00
Philip Rebohle
96e102beff
[dxvk] Use dynamic rendering for copies
...
Significantly reworks framebuffer copies as well. We'll no longer
create dummy samplers to work around glslang versions not supporting
texture descriptors without samplers, and copyImageFb was cleaned
up to factor out the part where a temporary image is created.
2022-07-07 16:16:50 +02:00
Philip Rebohle
cd8a2bcfcd
[dxvk] Use custom sync primitives
2021-06-29 00:51:20 +02:00
Philip Rebohle
27155539b6
[dxvk] Add meta copy pipeline for packed buffer image copies
2021-06-24 21:07:47 +02:00
Philip Rebohle
c1fcc3fc98
[dxvk] Simplify barriers around meta copy operations
2020-05-02 18:46:21 +02:00
Philip Rebohle
6ea21d57fe
[dxvk] Factor out mip gen classes and rename them to DxvkMetaBlit*
...
Since mip map generation is a blit operation, we can make a more
general-purpose blitter and implement mip map generation on top
of that.
2019-10-16 01:52:14 +02:00
Philip Rebohle
fb9ea958a1
[dxvk] Fix meta copy operation for 1D images
2019-07-18 19:50:57 +02:00
Philip Rebohle
792f15680a
[dxvk] Use new fullscreen shaders for meta copy operations
2019-07-18 18:57:17 +02:00
Philip Rebohle
e611dff45e
[dxvk] Support depth-stencil meta-copy operations
2019-07-18 17:25:56 +02:00
Philip Rebohle
0dd8cba199
[dxvk] Support depth-stencil formats for meta copy objects
2019-07-18 17:25:50 +02:00
Philip Rebohle
90c7878a53
[dxvk] Rename dxvk_resolve_{vert|geom} -> dxvk_copy_{vert|geom}
2019-03-25 18:22:56 +01:00
Philip Rebohle
7627f6e3ed
[dxvk] Optimize meta copy barriers
2019-03-25 17:58:31 +01:00
Philip Rebohle
33408a8a74
[dxvk] Fix stencil state assignment
...
Not really important since we don't use stencil anyway,
but we should at least populate the struct correctly.
2018-09-27 21:04:49 +02:00
Philip Rebohle
fad2e13882
[dxvk] Add meta copy code
...
The current way of copying data between incompatible images is slow
and does not work for multisampled images. This new code implements
a render pass which performs an exact copy of the source data.
2018-09-27 11:44:09 +02:00