Beispiel #1
0
/*
============
idBrushBSP::RemoveMultipleLeafNodeReferences_r
============
*/
void idBrushBSP::RemoveMultipleLeafNodeReferences_r( idBrushBSPNode *node )
{
	if( !node )
	{
		return;
	}
	
	if( node->children[0] )
	{
		if( node->children[0]->parent != node )
		{
			node->children[0] = NULL;
		}
		else
		{
			RemoveMultipleLeafNodeReferences_r( node->children[0] );
		}
	}
	
	if( node->children[1] )
	{
		if( node->children[1]->parent != node )
		{
			node->children[1] = NULL;
		}
		else
		{
			RemoveMultipleLeafNodeReferences_r( node->children[1] );
		}
	}
}
Beispiel #2
0
/*
============
idBrushBSP::~idBrushBSP
============
*/
idBrushBSP::~idBrushBSP( void ) {

	RemoveMultipleLeafNodeReferences_r( root );
	Free_r( root );

	if ( outside ) {
		delete outside;
	}
}