1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
struct VS_INPUT
{
float4 Position : POSITION0;
float3 Normal : TEXCOORD2;
};
struct VS_OUTPUT
{
float4 Position : POSITION0;
/* pixel_position and normal are used to compute the reflections in the pixel shader */
float3 PixelPosition : TEXCOORD0;
float3 Normal : TEXCOORD1;
};
float4x4 al_projview_matrix;
VS_OUTPUT vs_main(VS_INPUT Input)
{
VS_OUTPUT Output;
Output.Position = mul(Input.Position, al_projview_matrix);
Output.PixelPosition = Input.Position.xyz;
Output.Normal = Input.Normal;
return Output;
}
|