summaryrefslogtreecommitdiff
path: root/indra/newview/llreflectionmapmanager.cpp
diff options
context:
space:
mode:
authorRunitaiLinden <davep@lindenlab.com>2023-10-02 14:19:04 -0500
committerRunitaiLinden <davep@lindenlab.com>2023-10-02 14:19:04 -0500
commitbc4e90ea5e462662f90c860d69aaa53b88f189c5 (patch)
tree99d6827c65cdc9afcbab1fc99ecc57136d98ed2a /indra/newview/llreflectionmapmanager.cpp
parent3da26ee8df6cc7e57ba3acbb91437ec97e151002 (diff)
SL-20124 Wipe reflection probes when applying parcel EEP settings and pause updates on probes until transition completes.
Diffstat (limited to 'indra/newview/llreflectionmapmanager.cpp')
-rw-r--r--indra/newview/llreflectionmapmanager.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/indra/newview/llreflectionmapmanager.cpp b/indra/newview/llreflectionmapmanager.cpp
index bb0bb04797..915c8893a4 100644
--- a/indra/newview/llreflectionmapmanager.cpp
+++ b/indra/newview/llreflectionmapmanager.cpp
@@ -244,11 +244,14 @@ void LLReflectionMapManager::update()
continue;
}
- if (probe != mDefaultProbe && !probe->isRelevant())
- {
+ if (probe != mDefaultProbe &&
+ (!probe->isRelevant() || mPaused))
+ { // skip irrelevant probes (or all non-default probes if paused)
continue;
}
+
+
LLVector4a d;
if (probe != mDefaultProbe)
@@ -807,6 +810,16 @@ void LLReflectionMapManager::reset()
mReset = true;
}
+void LLReflectionMapManager::pause()
+{
+ mPaused = true;
+}
+
+void LLReflectionMapManager::resume()
+{
+ mPaused = false;
+}
+
void LLReflectionMapManager::shift(const LLVector4a& offset)
{
for (auto& probe : mProbes)