SPIRV-Cross/reference/shaders-hlsl/vert/locations.vert

65 lines
1.5 KiB
GLSL
Raw Normal View History

struct Foo
{
float3 a;
float3 b;
float3 c;
};
static float4 gl_Position;
static float4 Input2;
static float4 Input4;
static float4 Input0;
static float vLocation0;
static float vLocation1;
static float vLocation2[2];
static Foo vLocation4;
static float vLocation7;
struct SPIRV_Cross_Input
{
float4 Input2 : TEXCOORD2;
float4 Input4 : TEXCOORD4;
float4 Input0 : TEXCOORD0;
};
struct SPIRV_Cross_Output
{
2017-03-07 12:56:03 +00:00
float4 gl_Position : SV_Position;
float vLocation0 : TEXCOORD0;
float vLocation1 : TEXCOORD1;
float vLocation2[2] : TEXCOORD2;
Foo vLocation4 : TEXCOORD4;
float vLocation7 : TEXCOORD7;
};
void vert_main()
{
gl_Position = ((float4(1.0f, 1.0f, 1.0f, 1.0f) + Input2) + Input4) + Input0;
vLocation0 = 0.0f;
vLocation1 = 1.0f;
vLocation2[0] = 2.0f;
vLocation2[1] = 2.0f;
Foo foo;
foo.a = float3(1.0f, 1.0f, 1.0f);
foo.b = float3(1.0f, 1.0f, 1.0f);
foo.c = float3(1.0f, 1.0f, 1.0f);
vLocation4 = foo;
vLocation7 = 7.0f;
}
SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
{
Input2 = stage_input.Input2;
Input4 = stage_input.Input4;
Input0 = stage_input.Input0;
vert_main();
SPIRV_Cross_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.vLocation0 = vLocation0;
stage_output.vLocation1 = vLocation1;
stage_output.vLocation2 = vLocation2;
stage_output.vLocation4 = vLocation4;
stage_output.vLocation7 = vLocation7;
return stage_output;
}