Fixes Fragment Shading Rate layered tests
Test was exporting Layer and ViewportIndex
decorations in Vertex Shader in the
Geometry Shader tests without checking
for support.
Components: Vulkan
VK-GL-CTS Issue: 2865
Affects:
dEQP-VK.fragment_shading_Rate.srlayered.*.gs
dEQP-VK.fragment_shading_Rate.colorlayered.*.gs
Change-Id: Idbf6be2c14bb8409feec2d7262efb9a402cf35a2
diff --git a/external/vulkancts/modules/vulkan/fragment_shading_rate/vktFragmentShadingRateBasic.cpp b/external/vulkancts/modules/vulkan/fragment_shading_rate/vktFragmentShadingRateBasic.cpp
index 290c505..47e916a 100644
--- a/external/vulkancts/modules/vulkan/fragment_shading_rate/vktFragmentShadingRateBasic.cpp
+++ b/external/vulkancts/modules/vulkan/fragment_shading_rate/vktFragmentShadingRateBasic.cpp
@@ -335,10 +335,13 @@
// Verify that we can read from the output variable
vss << " if (gl_PrimitiveShadingRateEXT != pc.shadingRate) readbackok = 0;\n";
- if (m_data.multiViewport)
- vss << " gl_ViewportIndex = instanceIndex & 1;\n";
- if (m_data.colorLayered)
- vss << " gl_Layer = (instanceIndex & 2) >> 1;\n";
+ if (!m_data.geometryShader)
+ {
+ if (m_data.multiViewport)
+ vss << " gl_ViewportIndex = instanceIndex & 1;\n";
+ if (m_data.colorLayered)
+ vss << " gl_Layer = (instanceIndex & 2) >> 1;\n";
+ }
}
vss << "}\n";