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