summaryrefslogtreecommitdiff
path: root/indra/newview/llvovolume.cpp
diff options
context:
space:
mode:
authorCosmic Linden <cosmic@lindenlab.com>2022-07-05 16:10:16 -0700
committerCosmic Linden <cosmic@lindenlab.com>2022-07-05 16:38:40 -0700
commitf74a17ca7240363c23990649df98b2cc7ab17d62 (patch)
treed25eb33ad82a653c0ddcdc59ae3f25277c973c49 /indra/newview/llvovolume.cpp
parent65fb1c26f1266c68b1c6c663c49e25d9a5d62028 (diff)
SL-17448: Also update the octree box if there is a position rebuild
Diffstat (limited to 'indra/newview/llvovolume.cpp')
-rw-r--r--indra/newview/llvovolume.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp
index d86e135116..eb8ff29aca 100644
--- a/indra/newview/llvovolume.cpp
+++ b/indra/newview/llvovolume.cpp
@@ -2024,7 +2024,9 @@ BOOL LLVOVolume::updateGeometry(LLDrawable *drawable)
}
BOOL compiled = FALSE;
- BOOL should_update_octree_bounds = bool(getRiggedVolume());
+ // This should be true in most cases, unless we're sure no octree update is
+ // needed.
+ BOOL should_update_octree_bounds = bool(getRiggedVolume()) || mDrawable->isState(LLDrawable::REBUILD_POSITION) || !mDrawable->getSpatialExtents()->isFinite3();
if (mVolumeChanged || mFaceMappingChanged)
{
@@ -2066,7 +2068,6 @@ BOOL LLVOVolume::updateGeometry(LLDrawable *drawable)
// All it did was move or we changed the texture coordinate offset
}
- should_update_octree_bounds = should_update_octree_bounds || !mDrawable->getSpatialExtents()->isFinite3();
// Generate bounding boxes if needed, and update the object's size in the
// octree
genBBoxes(FALSE, should_update_octree_bounds);