InstanceObject *InstanceSprite::createInstanceSorted(float depth)
{
	if(getFlagInstanceBase())
	{
		if(getInstanceCount() < getInstanceCountMax())
		{
			InstanceObject *pNewInstance = (InstanceObject *)clone();
			pNewInstance->setFlagInstanceBase(false);
			pNewInstance->setInstanceIndex(getInstanceCount());
			pNewInstance->setPositionZ(depth);
			linkVertexBufferDynamic(pNewInstance);
			addInstanceSorted(pNewInstance);
			return pNewInstance;
		}
	}
	return NULL;
}