summaryrefslogtreecommitdiff
path: root/tests/cross-compile/geometry-shader.slang
diff options
context:
space:
mode:
Diffstat (limited to 'tests/cross-compile/geometry-shader.slang')
-rw-r--r--tests/cross-compile/geometry-shader.slang33
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/cross-compile/geometry-shader.slang b/tests/cross-compile/geometry-shader.slang
new file mode 100644
index 000000000..614d71db9
--- /dev/null
+++ b/tests/cross-compile/geometry-shader.slang
@@ -0,0 +1,33 @@
+// geometry-shader.slang
+
+//TEST:CROSS_COMPILE: -profile sm_5_0 -stage geometry -entry main -target spirv-assembly
+
+struct CoarseVertex
+{
+ float4 position : POSITION;
+ float3 color : COLOR;
+ uint id : ID;
+}
+
+struct RasterVertex
+{
+ float4 position : POSITION;
+ float3 color : COLOR;
+ uint id : SV_RenderTargetArrayIndex;
+}
+
+[maxvertexcount(3)]
+void main(
+ triangle CoarseVertex coarseVertices[3],
+ inout TriangleStream<RasterVertex> outputStream)
+{
+ for(int ii = 0; ii < 3; ++ii)
+ {
+ CoarseVertex coarseVertex = coarseVertices[ii];
+ RasterVertex rasterVertex;
+ rasterVertex.position = coarseVertex.position;
+ rasterVertex.color = coarseVertex.color;
+ rasterVertex.id = coarseVertex.id;
+ outputStream.Append(rasterVertex);
+ }
+}