xkslang/Test/hlsl.clipdistance-2.geom

20 строки
480 B
GLSL

struct S {
float4 pos : SV_Position;
float2 clip[2] : SV_ClipDistance0;
};
[maxvertexcount(3)]
void main(triangle in float4 pos[3] : SV_Position,
triangle in uint VertexID[3] : VertexID,
inout LineStream<S> OutputStream,
triangle in float2 clip[3][2] : SV_ClipDistance) // externally: an array 3 of array 4 of float.
{
S s;
s.pos = pos[0];
s.clip[0] = clip[0][0];
s.clip[1] = clip[0][1];
OutputStream.Append(s);
}