diff --git a/libs/vkd3d-shader/dxil.c b/libs/vkd3d-shader/dxil.c index 399c2b67..a10de680 100644 --- a/libs/vkd3d-shader/dxil.c +++ b/libs/vkd3d-shader/dxil.c @@ -8598,6 +8598,7 @@ static const enum vkd3d_shader_sysval_semantic sysval_semantic_table[] = [SEMANTIC_KIND_VERTEXID] = VKD3D_SHADER_SV_VERTEX_ID, [SEMANTIC_KIND_INSTANCEID] = VKD3D_SHADER_SV_INSTANCE_ID, [SEMANTIC_KIND_POSITION] = VKD3D_SHADER_SV_POSITION, + [SEMANTIC_KIND_RTARRAYINDEX] = VKD3D_SHADER_SV_RENDER_TARGET_ARRAY_INDEX, [SEMANTIC_KIND_CLIPDISTANCE] = VKD3D_SHADER_SV_CLIP_DISTANCE, [SEMANTIC_KIND_CULLDISTANCE] = VKD3D_SHADER_SV_CULL_DISTANCE, [SEMANTIC_KIND_PRIMITIVEID] = VKD3D_SHADER_SV_PRIMITIVE_ID, diff --git a/tests/hlsl/rt-array-index.shader_test b/tests/hlsl/rt-array-index.shader_test index 5273679a..e0a57a14 100644 --- a/tests/hlsl/rt-array-index.shader_test +++ b/tests/hlsl/rt-array-index.shader_test @@ -31,20 +31,20 @@ float4 main(in float4 pos : SV_Position, uniform 0 uint 0 uniform 1 uint 0 clear rtv 0 1.0 1.0 1.0 1.0 -todo(sm>=6 | glsl) draw quad +todo(glsl) draw quad probe (320, 240, 0) rgba(0.0, 0.0, 0.0, 0.0) probe (320, 240, 1) rgba(1.0, 1.0, 1.0, 1.0) uniform 0 uint 1 uniform 1 uint 1 clear rtv 0 1.0 1.0 1.0 1.0 -todo(sm>=6 | glsl) draw quad +todo(glsl) draw quad probe (320, 240, 0) rgba(1.0, 1.0, 1.0, 1.0) probe (320, 240, 1) rgba(1.0, 1.0, 0.0, 0.0) uniform 0 uint 3 uniform 1 uint 2 clear rtv 0 1.0 1.0 1.0 1.0 -todo(sm>=6 | glsl) draw quad +todo(glsl) draw quad probe (320, 240, 0) rgba(1.0, 1.0, 1.0, 1.0) probe (320, 240, 3) rgba(3.0, 2.0, 0.0, 0.0)