SPIRV-Cross/reference/opt/shaders-hlsl/asm/vert/vertex-id-instance-id.asm.vert
2017-12-12 12:52:45 +01:00

29 lines
617 B
GLSL

static float4 gl_Position;
static int gl_VertexID;
static int gl_InstanceID;
struct SPIRV_Cross_Input
{
uint gl_VertexID : SV_VertexID;
uint gl_InstanceID : SV_InstanceID;
};
struct SPIRV_Cross_Output
{
float4 gl_Position : SV_Position;
};
void vert_main()
{
gl_Position = float(gl_VertexID + gl_InstanceID).xxxx;
}
SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
{
gl_VertexID = int(stage_input.gl_VertexID);
gl_InstanceID = int(stage_input.gl_InstanceID);
vert_main();
SPIRV_Cross_Output stage_output;
stage_output.gl_Position = gl_Position;
return stage_output;
}