diff --git a/libraries/octree/src/OctreeQuery.cpp b/libraries/octree/src/OctreeQuery.cpp index 7d9fc7d08c..a88f730a50 100644 --- a/libraries/octree/src/OctreeQuery.cpp +++ b/libraries/octree/src/OctreeQuery.cpp @@ -17,7 +17,18 @@ #include "OctreeConstants.h" #include "OctreeQuery.h" -OctreeQuery::OctreeQuery() { +const float DEFAULT_FOV = 45.0f; // degrees +const float DEFAULT_ASPECT_RATIO = 1.0f; +const float DEFAULT_NEAR_CLIP = 0.1f; +const float DEFAULT_FAR_CLIP = 3.0f; + +OctreeQuery::OctreeQuery() : + _cameraFov(DEFAULT_FOV), + _cameraAspectRatio(DEFAULT_ASPECT_RATIO), + _cameraNearClip(DEFAULT_NEAR_CLIP), + _cameraFarClip(DEFAULT_FAR_CLIP), + _cameraCenterRadius(DEFAULT_FAR_CLIP) +{ _maxQueryPPS = DEFAULT_MAX_OCTREE_PPS; } diff --git a/libraries/octree/src/OctreeQuery.h b/libraries/octree/src/OctreeQuery.h index 058c1dc585..81a63a696c 100644 --- a/libraries/octree/src/OctreeQuery.h +++ b/libraries/octree/src/OctreeQuery.h @@ -89,14 +89,14 @@ public slots: protected: // camera details for the avatar - glm::vec3 _cameraPosition = glm::vec3(0.0f); - glm::quat _cameraOrientation = glm::quat(); - float _cameraFov = 0.0f; - float _cameraAspectRatio = 1.0f; - float _cameraNearClip = 0.0f; - float _cameraFarClip = 0.0f; - float _cameraCenterRadius { 0.0f }; - glm::vec3 _cameraEyeOffsetPosition = glm::vec3(0.0f); + glm::vec3 _cameraPosition { glm::vec3(0.0f) }; + glm::quat _cameraOrientation { glm::quat() }; + float _cameraFov; + float _cameraAspectRatio; + float _cameraNearClip; + float _cameraFarClip; + float _cameraCenterRadius; + glm::vec3 _cameraEyeOffsetPosition { glm::vec3(0.0f) }; // octree server sending items int _maxQueryPPS = DEFAULT_MAX_OCTREE_PPS; diff --git a/libraries/octree/src/OctreeQueryNode.cpp b/libraries/octree/src/OctreeQueryNode.cpp index 4ebe650f6a..3003d76d14 100644 --- a/libraries/octree/src/OctreeQueryNode.cpp +++ b/libraries/octree/src/OctreeQueryNode.cpp @@ -182,6 +182,7 @@ bool OctreeQueryNode::updateCurrentViewFrustum() { getCameraAspectRatio(), getCameraNearClip(), getCameraFarClip())); + newestViewFrustum.calculate(); } @@ -189,7 +190,7 @@ bool OctreeQueryNode::updateCurrentViewFrustum() { QMutexLocker viewLocker(&_viewMutex); if (!newestViewFrustum.isVerySimilar(_currentViewFrustum)) { _currentViewFrustum = newestViewFrustum; - _currentViewFrustum.calculate(); + //_currentViewFrustum.calculateProjection(); currentViewFrustumChanged = true; } }