示例#1
0
//----------------------------------------------------------------//
bool USFrustum::Cull ( const USBox& box ) const {

	if ( !box.Overlap ( mAABB )) return true;

	if ( this->mUsePlanes ) {
		if ( USSect::BoxToPlane ( box, mPlanes [ NEAR_PLANE ]) > 0 ) return true;
		if ( USSect::BoxToPlane ( box, mPlanes [ FAR_PLANE ]) > 0 ) return true;
		if ( USSect::BoxToPlane ( box, mPlanes [ LEFT_PLANE ]) > 0 ) return true;
		if ( USSect::BoxToPlane ( box, mPlanes [ RIGHT_PLANE ]) > 0 ) return true;
		if ( USSect::BoxToPlane ( box, mPlanes [ TOP_PLANE ]) > 0 ) return true;
		if ( USSect::BoxToPlane ( box, mPlanes [ BOTTOM_PLANE ]) > 0 ) return true;
	}
	return false;
}