Philip Rebohle
|
aef2eb14df
|
[dxvk] Use BindConstantBufferRange for SetConstantBuffers1 if possible
Reduces ref counting overhead in the few games that use this.
|
2022-07-14 15:14:21 +02:00 |
|
Philip Rebohle
|
ce3eae59a9
|
[dxvk] Introduce bindResourceBufferRange
|
2022-07-14 14:56:13 +02:00 |
|
Philip Rebohle
|
57445227ac
|
[d3d11] Fix render target validation (again)
This behaviour is rather obscure and undocumented, but testing shows
that DSV <-> RTV mismatches are allowed under some circumstances.
Fixes #2555.
|
2022-07-14 12:39:14 +02:00 |
|
Robin Kertels
|
ce48b57f94
|
[d3d9] Allow POOL_SCRATCH targets in GetFrontBufferData
|
2022-07-13 14:01:12 +02:00 |
|
Blisto91
|
64d2260656
|
[d3d9] add D3DFMT_UNKNOWN to windowed BackBufferFormat
|
2022-07-13 13:03:05 +02:00 |
|
Philip Rebohle
|
95995041b0
|
[d3d9] Explicitly check for Unknown in CheckDeviceFormatConversion
|
2022-07-13 12:35:33 +02:00 |
|
Robin Kertels
|
10b174b52c
|
[d3d9] Fix barriers with staging buffers
|
2022-07-12 21:16:32 +01:00 |
|
Philip Rebohle
|
bd68f05c9b
|
[dxvk] Make emitRenderTargetReadbackBarrier more generic
And also remove the redundant pipeline barrier.
|
2022-07-12 17:29:11 +02:00 |
|
Philip Rebohle
|
5ff6f3a2ca
|
[dxvk] Fix graphics UAV barriers
We broke this when replacing gfxBarriers with execBarriers,
since starting a render pass instance clears queued up barriers.
|
2022-07-12 14:26:52 +02:00 |
|
Philip Rebohle
|
59475fb053
|
[dxvk] Remove cull mode and front face from pipeline state
And bump state cache version to v14.
|
2022-07-12 12:07:25 +02:00 |
|
Philip Rebohle
|
d3c8d21047
|
[dxvk] Make cull mode and front face dynamic state
|
2022-07-12 12:03:05 +02:00 |
|
Philip Rebohle
|
18d4a87333
|
[dxvk] Add pipeline flag for rasterizer discard
|
2022-07-12 11:42:24 +02:00 |
|
Philip Rebohle
|
77891d71db
|
[d3d11] Fix unused variable warning
|
2022-07-12 11:39:56 +02:00 |
|
Philip Rebohle
|
f99a833f51
|
[d3d11] Remove d3d11.constantBufferRangeCheck option
|
2022-07-12 02:11:39 +02:00 |
|
Philip Rebohle
|
e8f48c71ab
|
[dxvk] Always enable robustBufferAccess2 feature
And respect the required alignments when creating buffers.
|
2022-07-12 02:11:32 +02:00 |
|
Philip Rebohle
|
6f5ae58ccc
|
[dxvk] Remove dummy resources that are no longer needed
|
2022-07-12 01:54:22 +02:00 |
|
Philip Rebohle
|
6482898167
|
[dxvk] Mark VK_KHR_create_renderpass_2 as required
Dependency of VK_KHR_dynamic_rendering.
|
2022-07-12 00:54:24 +02:00 |
|
Philip Rebohle
|
379c2e545e
|
[util] Work around silly compiler warnings on GCC 12.1
No, we're not actually reading 64 bytes from a 1-byte area.
|
2022-07-11 19:24:09 +02:00 |
|
Philip Rebohle
|
52038b2f83
|
[dxvk] Ignore state cache for pipelines that can be fast linked
|
2022-07-11 16:23:14 +02:00 |
|
Philip Rebohle
|
ca52c5a67f
|
[dxvk] Don't read or create state cache file if state cache is disabled
|
2022-07-11 01:19:09 +02:00 |
|
Philip Rebohle
|
00cfee9d17
|
[d3d11] Ignore OMSetRenderTargets calls with incompatible view sizes
Fixes #2701.
|
2022-07-10 15:17:00 +02:00 |
|
Matej Dian
|
1b89394aa0
|
[util] Enable cached dynamic resources for DayZ (#2709)
|
2022-07-09 15:51:04 +02:00 |
|
Philip Rebohle
|
2832083fe5
|
[dxvk] Properly log pipeline state on error
|
2022-07-09 13:53:20 +02:00 |
|
Philip Rebohle
|
c6168179bd
|
[dxvk] Re-add render target format validation
This was lost during the state cache and render target state rework.
|
2022-07-09 13:44:52 +02:00 |
|
Philip Rebohle
|
021aff1fc0
|
[dxvk] Support fomatting more Vulkan enum names
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
02aa1736f5
|
[dxvk] Try to create cached optimized pipeline whenever possible
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
df1908f7bf
|
[dxvk] Support creating shader stage infos with module identifiers
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
52cc0a366e
|
[dxvk] Query shader module identifiers from shader pipeline libraries
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
331c790592
|
[dxvk] Enable VK_EXT_shader_module_identifier if supported
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
04545ab00a
|
[dxvk] Enable VK_EXT_pipeline_creation_cache_control if supported
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
f4fd8c6c65
|
[dxvk] Remove in-memory pipeline cache
Doesn't really do much and only prevents Nvidia's disk cache
from working on 515.49.06 drivers.
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
645886db8d
|
[hud] Display pipeline library count in HUD
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
3552983084
|
[dxvk] Add stat counter for pipeline libraries
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
4535fdc336
|
[dxvk] Pass pipeline manager to pipeline library constructor
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
498444f1a8
|
[dxvk] Reuse linked base pipelines if possible
No reason to create identical pipelines multiple times.
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
5562ff4472
|
[dxvk] Remove pipeline compile timing
Meaningless now.
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
5d340e48b4
|
[dxvk] Improve pipeline state logging
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
5e1569593a
|
[dxvk] Create full pipeline layout with INDEPENDENT_SETS_BIT
And use it to link pipelines as well as descriptor binding.
Should fix issues related to descriptors.
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
b51d7a3cc0
|
[dxvk] Update descriptor sets after binding pipeline
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
6256ab2a19
|
[dxvk] Use pipeline libraries to link base pipelines if possible
|
2022-07-09 13:41:07 +02:00 |
|
Philip Rebohle
|
7f9a04fd59
|
[dxvk] Don't keep pipeline locked when building optimized variant
Only lock when creating base variant, otherwise we'll have stutter.
|
2022-07-09 01:53:52 +02:00 |
|
Philip Rebohle
|
cc1575e8b7
|
[dxvk] Compile optimized graphics pipelines on worker threads if necessary
|
2022-07-09 01:53:52 +02:00 |
|
Philip Rebohle
|
b50ed2ceca
|
[dxvk] Deal with multiple pipeline handles for graphics pipeline instances
Also make the handles atomic since worker threads may access them when
compiling optimized pipeline variants.
|
2022-07-09 01:53:51 +02:00 |
|
Philip Rebohle
|
90454438b2
|
[dxvk] Introduce distinction between base and optimized pipelines
We need to know what kind of pipeline we're binding in order to apply
the correct dynamic state.
|
2022-07-09 01:53:51 +02:00 |
|
Philip Rebohle
|
e01ffc02a8
|
[dxvk] Add more dynamic state to DxvkCommandList
|
2022-07-09 01:53:51 +02:00 |
|
Philip Rebohle
|
a683ecd525
|
[dxvk] Create pipeline library for null shader
|
2022-07-09 01:53:51 +02:00 |
|
Philip Rebohle
|
a0d1ef7f61
|
[dxvk] Handle null shader in DxvkShaderPipelineLibrary
|
2022-07-09 01:53:51 +02:00 |
|
Philip Rebohle
|
2cb9ceba1d
|
[dxvk] Simplify pipeline instance data
|
2022-07-09 01:53:51 +02:00 |
|
Philip Rebohle
|
a72bf02374
|
[dxvk] Pass VS and FS libraries to graphics pipelines
|
2022-07-09 01:53:51 +02:00 |
|
Philip Rebohle
|
cb56e16a4b
|
[dxvk] Use precompiled compute pipelines whenever possible
|
2022-07-09 01:53:51 +02:00 |
|