#include "ShaderConstants.fxh"

struct VS_Input
{
	float3 position : POSITION;
	float4 color : COLOR;

#ifdef INSTANCEDSTEREO
	uint instanceID : SV_InstanceID;
#endif
};


struct PS_Input
{
	float4 position : SV_Position;
	float4 color : COLOR;
	float3 pos : PSCloud;
	float PSSky : PSSky;

#ifdef INSTANCEDSTEREO
	uint instanceID : SV_InstanceID;
#endif
};


void main( in VS_Input VSInput, out PS_Input PSInput )
{
#ifdef INSTANCEDSTEREO
	int i = VSInput.instanceID;
	PSInput.position = mul( WORLDVIEWPROJ_STEREO[i], float4( VSInput.position, 1 ) );
	PSInput.instanceID = i;
#else
	PSInput.position = mul(WORLDVIEWPROJ, float4(VSInput.position, 1));
#endif

	PSInput.pos = VSInput.position.xyz;
	PSInput.PSSky = VSInput.color.r;
	PSInput.color = CURRENT_COLOR;
}
