GLSL/HLSL: Add legacy handling for int vertex attributes
[KhronosGroup/SPIRV-Cross.git] / reference / shaders-hlsl / vert / legacy-int-attribute.sm30.vert
blob84e283483b90596018f4f850e4c00c8f46c433a0
1 uniform float4 gl_HalfPixel;
3 static float4 gl_Position;
4 static int4 attr_int4;
5 static int attr_int1;
7 struct SPIRV_Cross_Input
9     float4 attr_int4 : TEXCOORD0;
10     float attr_int1 : TEXCOORD1;
13 struct SPIRV_Cross_Output
15     float4 gl_Position : POSITION;
18 void vert_main()
20     gl_Position.x = float(attr_int4[attr_int1]);
21     gl_Position.y = 0.0f;
22     gl_Position.z = 0.0f;
23     gl_Position.w = 0.0f;
24     gl_Position.x = gl_Position.x - gl_HalfPixel.x * gl_Position.w;
25     gl_Position.y = gl_Position.y + gl_HalfPixel.y * gl_Position.w;
28 SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
30     attr_int4 = stage_input.attr_int4;
31     attr_int1 = stage_input.attr_int1;
32     vert_main();
33     SPIRV_Cross_Output stage_output;
34     stage_output.gl_Position = gl_Position;
35     return stage_output;