matrix ViewMatrix : c0;

struct VS_INPUT
{
vector Position	: POSITION;
vector Texture	: TEXCOORD0;
};

struct VS_OUTPUT
{
vector Position	: POSITION;
vector Texture1	: TEXCOORD0;
vector Texture2	: TEXCOORD1;
vector Gleam	: COLOR0;
};

VS_OUTPUT Main(VS_INPUT input)
{
VS_OUTPUT output = (VS_OUTPUT)0;

vector position = input.Position;
output.Gleam.x = abs((position.z - position.y) * 0.5f) + 0.25f;
position.z = 0.0f;
position = mul(ViewMatrix, position);

output.Position = position;
output.Texture1 = input.Texture;
output.Texture2.x = (position.x * 0.5) + 0.5f;
output.Texture2.y = ((position.y * -0.5) + 0.5f) * 0.7492682927f + 0.001;

return output;
}