From 135c7332e416a1273cb37e1e8d2e26cedde66452 Mon Sep 17 00:00:00 2001 From: Joshua Ashton Date: Thu, 25 Mar 2021 00:44:58 +0000 Subject: [PATCH] vkd3d: Implement D3D12_RESOURCE_STATE_SHADING_RATE_SOURCE Signed-off-by: Joshua Ashton --- libs/vkd3d/command.c | 5 +++++ libs/vkd3d/utils.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/libs/vkd3d/command.c b/libs/vkd3d/command.c index 5d8bf769..645e75e3 100644 --- a/libs/vkd3d/command.c +++ b/libs/vkd3d/command.c @@ -3339,6 +3339,11 @@ static void vk_access_and_stage_flags_from_d3d12_resource_state(const struct d3d *stages |= VK_PIPELINE_STAGE_TRANSFER_BIT; break; + case D3D12_RESOURCE_STATE_SHADING_RATE_SOURCE: + *stages |= VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR; + *access |= VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR; + break; + default: unhandled_state |= state; } diff --git a/libs/vkd3d/utils.c b/libs/vkd3d/utils.c index 779fdd22..1306fd0c 100644 --- a/libs/vkd3d/utils.c +++ b/libs/vkd3d/utils.c @@ -607,7 +607,8 @@ bool is_valid_resource_state(D3D12_RESOURCE_STATES state) D3D12_RESOURCE_STATE_GENERIC_READ | D3D12_RESOURCE_STATE_PRESENT | D3D12_RESOURCE_STATE_PREDICATION | - D3D12_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE; + D3D12_RESOURCE_STATE_RAYTRACING_ACCELERATION_STRUCTURE | + D3D12_RESOURCE_STATE_SHADING_RATE_SOURCE; if (state & ~valid_states) {