bool Plane::Intersects(const Frustum &frustum) const { bool sign = IsOnPositiveSide(frustum.CornerPoint(0)); for(int i = 1; i < 8; ++i) if (sign != IsOnPositiveSide(frustum.CornerPoint(i))) return true; return false; }
bool Sphere::Contains(const Frustum &frustum) const { for(int i = 0; i < 8; ++i) if (!Contains(frustum.CornerPoint(i))) return false; return true; }
void AABB::Enclose(const Frustum &frustum) { for(int i = 0; i < 8; ++i) Enclose(frustum.CornerPoint(i)); }