From bfa655a01fb79a941f71e68b4413f88793e0cef5 Mon Sep 17 00:00:00 2001 From: Elizabeth Figura Date: Mon, 12 May 2025 13:22:39 -0500 Subject: [PATCH] vkd3d-shader/ir: Use the .w component of the existing swizzle when lowering texldb. --- libs/vkd3d-shader/ir.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libs/vkd3d-shader/ir.c b/libs/vkd3d-shader/ir.c index 859f506a3..7466f7a2d 100644 --- a/libs/vkd3d-shader/ir.c +++ b/libs/vkd3d-shader/ir.c @@ -862,12 +862,14 @@ static enum vkd3d_result vsir_program_lower_tex(struct vsir_program *program, } else if (tex->flags == VKD3DSI_TEXLD_BIAS) { + enum vkd3d_shader_swizzle_component w = vsir_swizzle_get_component(srcs[0].swizzle, 3); + tex->opcode = VKD3DSIH_SAMPLE_B; tex->src = srcs; tex->src_count = 4; srcs[3] = tex->src[0]; - srcs[3].swizzle = VKD3D_SHADER_SWIZZLE(W, W, W, W); + srcs[3].swizzle = vkd3d_shader_create_swizzle(w, w, w, w); } else {