struct vIn {
	float4 color    : DIFFUSE;
	float4 position : POSITION;
};

struct vOut {
	float4 col : COLOR;
	float4 pos : POSITION;
};

vOut main(
	vIn              input,
	uniform float4x4 mvp
	)
{
	vOut   result;
	float4 position;

	position = float4(input.position.xyz, 1.0f);
	position = mul(position, mvp);
	position.xyz = position.xyz / position.w;
	
	result.pos = position;
	result.col = input.color;
	return result;
}
