#include "Interface.fx"

/*******************************************************************/

struct vsMid
{
	float4	pos		: POSITION;
	float4	color	: COLOR0;
	float	fog		: FOG;
	float2	tex0	: TEXCOORD0;
};

struct vsDst
{
	float4	color	: COLOR0;
};

/*******************************************************************/

vsMid VS(vsPNDT src)
{
	vsMid dst;

// Set pos:

	dst.pos	= mul(float4(src.pos, 1), argMVP);

// Set color:

	dst.color = src.color;

// Set fog:

	dst.fog = argFog(dst.pos.z);

// Set texture coordinate:

	dst.tex0 = src.tex0;

	return dst;
}

/*******************************************************************/

vsDst PS(vsMid src)
{
	vsDst dst;

// Read texture:

	float4 diffuseTex = tex2D(Sampler0L, src.tex0);

// Set color:

	dst.color = src.color * diffuseTex;

	return dst;
}

/*******************************************************************/

technique VS11PS13
{
	pass P0
	{
		FogEnable		= true;
		VertexShader	= compile vs_1_1 VS();
		PixelShader		= compile ps_1_3 PS();
	}
}
