summaryrefslogtreecommitdiff
path: root/indra/newview/llheroprobemanager.h
diff options
context:
space:
mode:
authorJonathan "Geenz" Goodman <geenz@geenzo.com>2024-02-25 22:52:23 -0800
committerJonathan "Geenz" Goodman <geenz@geenzo.com>2024-02-25 22:52:23 -0800
commit320258729757e9ef14e9509c22eca1ce6a0da856 (patch)
tree6383327b4b5c85134b315ab9ec7ac5c57e6ecb69 /indra/newview/llheroprobemanager.h
parent0d38d1bbd659206454d261193857d6fbb91387fa (diff)
#682 Add a low priority path for conservative probe face updates. This will update the "low priority" faces at half of the the probe update rate. Useful for less planar reflection geometry.
Diffstat (limited to 'indra/newview/llheroprobemanager.h')
-rw-r--r--indra/newview/llheroprobemanager.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/indra/newview/llheroprobemanager.h b/indra/newview/llheroprobemanager.h
index 7cc7e3b144..b1907ef185 100644
--- a/indra/newview/llheroprobemanager.h
+++ b/indra/newview/llheroprobemanager.h
@@ -68,7 +68,7 @@ public:
// perform occlusion culling on all active reflection probes
void doOcclusion();
- void registerViewerObject(LLVOVolume *drawablep);
+ bool registerViewerObject(LLVOVolume *drawablep);
void unregisterViewerObject(LLVOVolume* drawablep);
bool isMirrorPass() const { return mRenderingMirror; }
@@ -107,7 +107,7 @@ private:
void generateRadiance(LLReflectionMap *probe);
// list of active reflection maps
- std::vector<LLPointer<LLReflectionMap> > mProbes;
+ std::vector<LLPointer<LLReflectionMap>> mProbes;
// handle to UBO
U32 mUBO = 0;
@@ -137,7 +137,10 @@ private:
bool mRenderingMirror = false;
std::map<int, bool> mFaceUpdateList;
- std::set<LLPointer<LLVOVolume>> mHeroVOList;
- LLPointer<LLVOVolume> mNearestHero;
+ U32 mCurrentProbeUpdateFrame = 0;
+ U32 mLowPriorityFaceThrottle = 2;
+
+ std::vector<LLVOVolume*> mHeroVOList;
+ LLVOVolume* mNearestHero;
};