From 1a1f1f136977c77257cd1141e98ba6009649f4e3 Mon Sep 17 00:00:00 2001 From: Elizabeth Figura Date: Fri, 7 Mar 2025 17:26:01 -0600 Subject: [PATCH] vkd3d-shader/hlsl: Set the right interpolation mode in the vsir signature. --- libs/vkd3d-shader/hlsl_codegen.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libs/vkd3d-shader/hlsl_codegen.c b/libs/vkd3d-shader/hlsl_codegen.c index 14d113dcc..f0468d2c7 100644 --- a/libs/vkd3d-shader/hlsl_codegen.c +++ b/libs/vkd3d-shader/hlsl_codegen.c @@ -7828,7 +7828,12 @@ static void generate_vsir_signature_entry(struct hlsl_ctx *ctx, struct vsir_prog element->mask = mask; element->used_mask = use_mask; if (program->shader_version.type == VKD3D_SHADER_TYPE_PIXEL && !output) - element->interpolation_mode = VKD3DSIM_LINEAR; + { + if (program->shader_version.major >= 4) + element->interpolation_mode = sm4_get_interpolation_mode(var->data_type, var->storage_modifiers); + else + element->interpolation_mode = VKD3DSIM_LINEAR; + } switch (var->data_type->e.numeric.type) {