diff --git a/libraries/voxels/src/ViewFrustum.cpp b/libraries/voxels/src/ViewFrustum.cpp index 8bdb2d97cb..f967c9f69a 100644 --- a/libraries/voxels/src/ViewFrustum.cpp +++ b/libraries/voxels/src/ViewFrustum.cpp @@ -224,4 +224,17 @@ int ViewFrustum::boxInFrustum(const AABox& box) const { } return(result); } + +bool ViewFrustum::matches(const ViewFrustum& compareTo) const { + return compareTo._position == _position && + compareTo._direction == _direction && + compareTo._up == _up && + compareTo._right == _right && + compareTo._fieldOfView == _fieldOfView && + compareTo._aspectRatio == _aspectRatio && + compareTo._nearClip == _nearClip && + compareTo._farClip == _farClip; +} + + diff --git a/libraries/voxels/src/ViewFrustum.h b/libraries/voxels/src/ViewFrustum.h index d05bb9e1cf..cec380e35a 100644 --- a/libraries/voxels/src/ViewFrustum.h +++ b/libraries/voxels/src/ViewFrustum.h @@ -98,6 +98,10 @@ public: int sphereInFrustum(const glm::vec3& center, float radius) const; int boxInFrustum(const AABox& box) const; + // some frustum comparisons + bool matches(const ViewFrustum& compareTo) const; + bool matches(const ViewFrustum* compareTo) const { return matches(*compareTo); }; + };