RetroArch/reference/opt/shaders-hlsl/flatten/push-constant.flatten.vert
libretroadmin da29639d70 Squashed 'deps/SPIRV-Cross/' content from commit f3a75d1d4b
git-subtree-dir: deps/SPIRV-Cross
git-subtree-split: f3a75d1d4ba6b559d5c89550f800a518baad522d
2023-01-20 18:00:31 +01:00

36 lines
745 B
GLSL

uniform float4 PushMe[6];
static float4 gl_Position;
static float4 Pos;
static float2 vRot;
static float2 Rot;
struct SPIRV_Cross_Input
{
float2 Rot : TEXCOORD0;
float4 Pos : TEXCOORD1;
};
struct SPIRV_Cross_Output
{
float2 vRot : TEXCOORD0;
float4 gl_Position : SV_Position;
};
void vert_main()
{
gl_Position = mul(Pos, float4x4(PushMe[0], PushMe[1], PushMe[2], PushMe[3]));
vRot = mul(Rot, float2x2(PushMe[4].xy, PushMe[4].zw)) + PushMe[5].z.xx;
}
SPIRV_Cross_Output main(SPIRV_Cross_Input stage_input)
{
Pos = stage_input.Pos;
Rot = stage_input.Rot;
vert_main();
SPIRV_Cross_Output stage_output;
stage_output.gl_Position = gl_Position;
stage_output.vRot = vRot;
return stage_output;
}