////////////////////////////////////////////////////////////////////////////////////////////////////
// Includes
////////////////////////////////////////////////////////////////////////////////////////////////////

#include "../../../types.txt"

////////////////////////////////////////////////////////////////////////////////////////////////////
// Structures
////////////////////////////////////////////////////////////////////////////////////////////////////

struct VS_INPUT
{
	float4 pos : POSITION;
	float2 tex : TEXCOORD0;
};

struct VS_OUTPUT
{
	float4 pos      : MSV_POSITION;
	float2 tex      : TEXCOORD0;
};

////////////////////////////////////////////////////////////////////////////////////////////////////
// Grobal values
////////////////////////////////////////////////////////////////////////////////////////////////////

#if MIX_SM_HIGH

	cbuffer cbInput : register( b0 )
	{
		float4x4 g_WVPMat;
	};
	
#else //MIX_SM_HIGH

	float4x4 g_WVPMat : register( c0 );

#endif //MIX_SM_HIGH

////////////////////////////////////////////////////////////////////////////////////////////////////
// C֐
////////////////////////////////////////////////////////////////////////////////////////////////////

VS_OUTPUT main( VS_INPUT input )
{
	VS_OUTPUT output;

	output.pos = mul( input.pos, g_WVPMat );
	output.tex = input.tex;

	return output;
}
