From 96bda89e436b38d430b5cede93baa039d7360183 Mon Sep 17 00:00:00 2001 From: Hans-Kristian Arntzen Date: Mon, 7 Nov 2022 13:25:10 +0100 Subject: vkd3d-shader: Add handling of mesh visibility enums. Signed-off-by: Hans-Kristian Arntzen --- include/vkd3d_shader.h | 2 ++ libs/vkd3d-shader/dxil.c | 4 ++++ libs/vkd3d/state.c | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/include/vkd3d_shader.h b/include/vkd3d_shader.h index ca5b9476..dfcf0c95 100644 --- a/include/vkd3d_shader.h +++ b/include/vkd3d_shader.h @@ -46,6 +46,8 @@ enum vkd3d_shader_visibility VKD3D_SHADER_VISIBILITY_DOMAIN = 3, VKD3D_SHADER_VISIBILITY_GEOMETRY = 4, VKD3D_SHADER_VISIBILITY_PIXEL = 5, + VKD3D_SHADER_VISIBILITY_AMPLIFICATION = 6, + VKD3D_SHADER_VISIBILITY_MESH = 7, VKD3D_SHADER_VISIBILITY_COMPUTE = 1000000000, diff --git a/libs/vkd3d-shader/dxil.c b/libs/vkd3d-shader/dxil.c index a6349d37..2e8eb48d 100644 --- a/libs/vkd3d-shader/dxil.c +++ b/libs/vkd3d-shader/dxil.c @@ -45,6 +45,10 @@ static bool dxil_match_shader_visibility(enum vkd3d_shader_visibility visibility return visibility == VKD3D_SHADER_VISIBILITY_PIXEL; case DXIL_SPV_STAGE_COMPUTE: return visibility == VKD3D_SHADER_VISIBILITY_COMPUTE; + case DXIL_SPV_STAGE_AMPLIFICATION: + return visibility == VKD3D_SHADER_VISIBILITY_AMPLIFICATION; + case DXIL_SPV_STAGE_MESH: + return visibility == VKD3D_SHADER_VISIBILITY_MESH; default: return false; } diff --git a/libs/vkd3d/state.c b/libs/vkd3d/state.c index a078daf8..074cf182 100644 --- a/libs/vkd3d/state.c +++ b/libs/vkd3d/state.c @@ -217,6 +217,10 @@ enum vkd3d_shader_visibility vkd3d_shader_visibility_from_d3d12(D3D12_SHADER_VIS return VKD3D_SHADER_VISIBILITY_GEOMETRY; case D3D12_SHADER_VISIBILITY_PIXEL: return VKD3D_SHADER_VISIBILITY_PIXEL; + case D3D12_SHADER_VISIBILITY_AMPLIFICATION: + return VKD3D_SHADER_VISIBILITY_AMPLIFICATION; + case D3D12_SHADER_VISIBILITY_MESH: + return VKD3D_SHADER_VISIBILITY_MESH; default: FIXME("Unhandled visibility %#x.\n", visibility); return VKD3D_SHADER_VISIBILITY_ALL; -- cgit v1.2.3