mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
vkd3d-shader: Don't shift output array component write mask.
Fixes an assertion when compiling shaders with more than four clip or cull distances. Output arrays are arrays of scalars, so shifting the write mask is not very meaningful. Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de> Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
c002aee119
commit
907d733ffe
@ -4536,7 +4536,7 @@ static void vkd3d_dxbc_compiler_emit_store_shader_output(struct vkd3d_dxbc_compi
|
|||||||
ptr_type_id, output_id, vkd3d_dxbc_compiler_get_constant_uint(compiler, index));
|
ptr_type_id, output_id, vkd3d_dxbc_compiler_get_constant_uint(compiler, index));
|
||||||
object_id = vkd3d_dxbc_compiler_emit_swizzle(compiler, val_id,
|
object_id = vkd3d_dxbc_compiler_emit_swizzle(compiler, val_id,
|
||||||
write_mask, output_info->component_type, VKD3D_NO_SWIZZLE, VKD3DSP_WRITEMASK_0 << i);
|
write_mask, output_info->component_type, VKD3D_NO_SWIZZLE, VKD3DSP_WRITEMASK_0 << i);
|
||||||
vkd3d_dxbc_compiler_emit_store(compiler, chain_id, VKD3DSP_WRITEMASK_0 << index,
|
vkd3d_dxbc_compiler_emit_store(compiler, chain_id, VKD3DSP_WRITEMASK_0,
|
||||||
output_info->component_type, SpvStorageClassOutput, VKD3DSP_WRITEMASK_0 << i, object_id);
|
output_info->component_type, SpvStorageClassOutput, VKD3DSP_WRITEMASK_0 << i, object_id);
|
||||||
++index;
|
++index;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user