summaryrefslogtreecommitdiff
path: root/indra/newview/llreflectionmap.cpp
diff options
context:
space:
mode:
authorRunitaiLinden <davep@lindenlab.com>2023-12-05 19:50:25 -0600
committerRunitaiLinden <davep@lindenlab.com>2023-12-05 19:50:25 -0600
commitc28eb36a2c09f31f491676c8548dfa1c19277ce2 (patch)
tree18dfbcfbb2a1321c6865d198382059d8b1cdc3ff /indra/newview/llreflectionmap.cpp
parent1718fe5da2e19ddbe9a738eef273112632e5dd35 (diff)
SL-20654 Fix for box probes sometimes glitching out at the corners. Incidental fix for crash when mWaterPool is null.
Diffstat (limited to 'indra/newview/llreflectionmap.cpp')
-rw-r--r--indra/newview/llreflectionmap.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/indra/newview/llreflectionmap.cpp b/indra/newview/llreflectionmap.cpp
index ec54fa1165..a26445b4bc 100644
--- a/indra/newview/llreflectionmap.cpp
+++ b/indra/newview/llreflectionmap.cpp
@@ -167,7 +167,16 @@ void LLReflectionMap::autoAdjustOrigin()
{
mPriority = 1;
mOrigin.load3(mViewerObject->getPositionAgent().mV);
- mRadius = mViewerObject->getScale().mV[0]*0.5f;
+
+ if (mViewerObject->getVolume() && ((LLVOVolume*)mViewerObject)->getReflectionProbeIsBox())
+ {
+ LLVector3 s = mViewerObject->getScale().scaledVec(LLVector3(0.5f, 0.5f, 0.5f));
+ mRadius = s.magVec();
+ }
+ else
+ {
+ mRadius = mViewerObject->getScale().mV[0] * 0.5f;
+ }
}
}