diff --git a/src/dxso/dxso_compiler.cpp b/src/dxso/dxso_compiler.cpp index bb878dc44..8ba8283c5 100644 --- a/src/dxso/dxso_compiler.cpp +++ b/src/dxso/dxso_compiler.cpp @@ -2732,7 +2732,7 @@ void DxsoCompiler::emitControlFlowGenericLoop( } if (opcode == DxsoOpcode::TexLdd) { - DxsoRegMask gradMask(true, true, false, false); + DxsoRegMask gradMask(true, true, sampler.dimensions == 3, false); imageOperands.flags |= spv::ImageOperandsGradMask; imageOperands.sGradX = emitRegisterLoad(ctx.src[2], gradMask).id; imageOperands.sGradY = emitRegisterLoad(ctx.src[3], gradMask).id;