vkd3d-proton/include
Hans-Kristian Arntzen 6cba8b9945 vkd3d: Workaround broken barriers in DEATHLOOP.
In DEATHLOOP, there is a render pass which renders out a simple image,
which is then directly followed by a compute dispatch, reading that
image. The image is still in RENDER_TARGET state, and color buffers are
*not* flushed properly on at least RADV, manifesting as a very
distracting glitch pattern. This is a game bug, but for the time being,
we have to workaround it, *sigh*.

For a simple workaround, we can detect patterns where we see these
events in succession:

- Color RT is started
- StateBefore == RENDER_TARGET is not observed
- Dispatch()

In particular, when entering the options menu, highly distracting
glitches are observed in the background.

Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2022-01-12 12:20:03 +01:00
..
private vkd3d: Pad reserved resources to 64k alignment. 2021-10-18 14:58:34 +02:00
shader-debug vkd3d: Add support for a shader debug ring. 2020-09-29 15:00:36 +02:00
.gitignore include: Move debug interfaces to vkd3d_d3d12sdklayers.h. 2019-08-02 16:57:30 +02:00
meson.build vkd3d: Implement new interfaces required for DX12 DLSS support. 2021-08-27 11:37:15 +02:00
vkd3d.h vkd3d: Workaround broken barriers in DEATHLOOP. 2022-01-12 12:20:03 +01:00
vkd3d_command_list_vkd3d_ext.idl vkd3d: Implement new interfaces required for DX12 DLSS support. 2021-08-27 11:37:15 +02:00
vkd3d_d3d12.idl idl: Add new interfaces up to ID3D12Device9. 2021-11-19 14:57:51 +01:00
vkd3d_d3d12sdklayers.idl include: Move debug interfaces to vkd3d_d3d12sdklayers.h. 2019-08-02 16:57:30 +02:00
vkd3d_d3dcommon.idl include: Define WKPID_D3DDebugObjectName and friends 2021-02-25 21:51:43 +01:00
vkd3d_device_vkd3d_ext.idl vkd3d: Implement new interfaces required for DX12 DLSS support. 2021-08-27 11:37:15 +02:00
vkd3d_dxgi.idl tests: Print adapter info on Windows. 2018-12-03 22:22:42 +01:00
vkd3d_dxgi1_2.idl include: Prefix public header file names with vkd3d. 2017-12-15 16:27:34 +01:00
vkd3d_dxgi1_3.idl include: Prefix public header file names with vkd3d. 2017-12-15 16:27:34 +01:00
vkd3d_dxgi1_4.idl include: Prefix public header file names with vkd3d. 2017-12-15 16:27:34 +01:00
vkd3d_dxgibase.idl include: Prefix public header file names with vkd3d. 2017-12-15 16:27:34 +01:00
vkd3d_dxgiformat.idl include: Add some new dxgi formats. 2021-06-24 12:55:17 +02:00
vkd3d_dxgitype.idl include: Prefix public header file names with vkd3d. 2017-12-15 16:27:34 +01:00
vkd3d_shader.h vkd3d-shader: Add PER_COMPONENT_ROBUSTNESS shader extension. 2021-11-09 14:47:10 +01:00
vkd3d_sonames.h vkd3d: Remove dependency on linking directly against libvulkan. 2020-06-15 15:47:18 +02:00
vkd3d_swapchain_factory.idl meta: Add missing newlines to end of files 2020-11-05 17:16:57 +01:00
vkd3d_types.h include: Move vkd3d_result to common header. 2018-11-08 19:07:34 +01:00
vkd3d_unknown.idl include: Prefix public header file names with vkd3d. 2017-12-15 16:27:34 +01:00
vkd3d_utils.h vkd3d-utils: Move to .def exports 2020-10-28 17:05:13 +01:00
vkd3d_vk_includes.h vkd3d: Implement new interfaces required for DX12 DLSS support. 2021-08-27 11:37:15 +02:00
vkd3d_win32.h vkd3d: Implement new interfaces required for DX12 DLSS support. 2021-08-27 11:37:15 +02:00
vkd3d_windows.h vkd3d: Add support for InterlockedIncrement64. 2020-10-12 12:46:07 +02:00