summaryrefslogtreecommitdiff
path: root/indra/newview/llreflectionmapmanager.h
diff options
context:
space:
mode:
authorErik Kundiman <erik@megapahit.org>2026-08-18 13:57:14 +0800
committerErik Kundiman <erik@megapahit.org>2026-08-18 13:57:14 +0800
commit2fa8281b2d8ce8bdbcacf139ec674480da6c9d81 (patch)
treeffb343fee97f21942123fd322d88fea3ef1a4811 /indra/newview/llreflectionmapmanager.h
parent742d802f073e81abc6d4cd512e58a4d03b414b83 (diff)
parent214fa765986b4c1e1de1b917581f8508278abd8e (diff)
Merge branch '26.3'
Diffstat (limited to 'indra/newview/llreflectionmapmanager.h')
-rw-r--r--indra/newview/llreflectionmapmanager.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/indra/newview/llreflectionmapmanager.h b/indra/newview/llreflectionmapmanager.h
index 337c4ca7fa..cfca9afcb4 100644
--- a/indra/newview/llreflectionmapmanager.h
+++ b/indra/newview/llreflectionmapmanager.h
@@ -106,6 +106,7 @@ public:
// release any GL state
void cleanup();
+ void cleanupQueryPool();
// maintain reflection probes
void update();
@@ -164,6 +165,10 @@ public:
U32 probeCount();
U32 probeMemory();
+ // glDeleteQueries is expensive, so we maintain a pool of queries
+ GLuint allocateQuery();
+ void recycleQuery(GLuint query);
+
private:
friend class LLPipeline;
friend class LLHeroProbeManager;
@@ -190,6 +195,8 @@ private:
// bind UBO used for rendering
void setUniforms();
+ std::deque<GLuint> mQueryPool;
+
// render target for cube snapshots
// used to generate mipmaps without doing a copy-to-texture
LLRenderTarget mRenderTarget;