summaryrefslogtreecommitdiff
path: root/tests/pipeline/rasterization
diff options
context:
space:
mode:
Diffstat (limited to 'tests/pipeline/rasterization')
-rw-r--r--tests/pipeline/rasterization/mesh/hlsl-syntax.slang.glsl34
1 files changed, 22 insertions, 12 deletions
diff --git a/tests/pipeline/rasterization/mesh/hlsl-syntax.slang.glsl b/tests/pipeline/rasterization/mesh/hlsl-syntax.slang.glsl
index 01e29f879..0d7a201ef 100644
--- a/tests/pipeline/rasterization/mesh/hlsl-syntax.slang.glsl
+++ b/tests/pipeline/rasterization/mesh/hlsl-syntax.slang.glsl
@@ -2,27 +2,40 @@
#extension GL_EXT_mesh_shader : require
layout(row_major) uniform;
layout(row_major) buffer;
-const vec3 colors_0[3] = { vec3(1.0, 1.0, 0.0), vec3(0.0, 1.0, 1.0), vec3(1.0, 0.0, 1.0) };
-const vec2 positions_0[3] = { vec2(0.0, -0.5), vec2(0.5, 0.5), vec2(-0.5, 0.5) };
-layout(location = 0)
-out vec3 verts_color_0[3];
out gl_MeshPerVertexEXT
{
vec4 gl_Position;
} gl_MeshVerticesEXT[3];
+const vec3 colors_0[3] = { vec3(1.0, 1.0, 0.0), vec3(0.0, 1.0, 1.0), vec3(1.0, 0.0, 1.0) };
+const vec2 positions_0[3] = { vec2(0.0, -0.5), vec2(0.5, 0.5), vec2(-0.5, 0.5) };
+
+struct Vertex_0
+{
+ vec4 pos_0;
+ vec3 color_0;
+};
+
+Vertex_0 Vertex_x24init_0(vec4 pos_1, vec3 color_1)
+{
+ Vertex_0 _S1;
+
+ _S1.pos_0 = pos_1;
+ _S1.color_0 = color_1;
+ return _S1;
+}
+layout(location = 0)
+out vec3 verts_color_0[3];
out uvec3 gl_PrimitiveTriangleIndicesEXT[1];
void foo_0(uint _S2)
{
if(_S2 < 3U)
{
- gl_MeshVerticesEXT[_S2].gl_Position = vec4(positions_0[_S2], 0.0, 1.0);
- verts_color_0[_S2] = colors_0[_S2];
- }
- else
- {
+ Vertex_0 _S3 = Vertex_x24init_0(vec4(positions_0[_S2], 0.0, 1.0), colors_0[_S2]);
+ gl_MeshVerticesEXT[_S2].gl_Position = _S3.pos_0;
+ verts_color_0[_S2] = _S3.color_0;
}
return;
}
@@ -39,8 +52,5 @@ void main()
{
gl_PrimitiveTriangleIndicesEXT[gl_LocalInvocationIndex] = uvec3(0U, 1U, 2U);
}
- else
- {
- }
return;
}