
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///		ZSprite Class
///
///		- Sprite Class
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////








#include	"..\Scene Graph\ZooSprite.h"


///////////////////////////////////////////////////////////////////////////
/// Constructor															///
///////////////////////////////////////////////////////////////////////////
ZSprite::ZSprite(int s3d) : ZNodeGraph(s3d)
{
	type = SPR_TYPE_ID;

	material = NULL;
	
	CameraOriented	= true;

	UV1[0].SetCoord(0.0f, 0.0f);	UV1[1].SetCoord(1.0f, 0.0f);
	UV1[2].SetCoord(1.0f, 1.0f);	UV1[3].SetCoord(0.0f, 1.0f);
	
	UV2[0].SetCoord(0.0f, 0.0f);	UV2[1].SetCoord(1.0f, 0.0f);
	UV2[2].SetCoord(1.0f, 1.0f);	UV2[3].SetCoord(0.0f, 1.0f);

	clampU1 = clampV1 = clampU2 = clampV2 = true;

	vertColor1[0].SetCoord(1.0f, 1.0f, 1.0f);		vertColor1[1].SetCoord(1.0f, 1.0f, 1.0f);
	vertColor1[2].SetCoord(1.0f, 1.0f, 1.0f);		vertColor1[3].SetCoord(1.0f, 1.0f, 1.0f);

	vertColor2[0].SetCoord(1.0f, 1.0f, 1.0f);		vertColor2[1].SetCoord(1.0f, 1.0f, 1.0f);
	vertColor2[2].SetCoord(1.0f, 1.0f, 1.0f);		vertColor2[3].SetCoord(1.0f, 1.0f, 1.0f);

	rotationZ = 0.0f;
	
	//$BLG
	blg_sprClickable = false;
}


ZSprite::~ZSprite()
{
	if(material)			material->DecRef();

	ZNodeGraph::~ZNodeGraph();
}


///////////////////////////////////////////////////////////////////////////
/// Set the material of the face										///
///////////////////////////////////////////////////////////////////////////
void ZSprite::SetMaterial(ZMaterial *newMat)
{
	if(newMat!=material)
	{
		if(material!=NULL)			material->DecRef();
		material = newMat;
		if(material!=NULL)			material->IncRef();
	}
}
