summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorAlexander Gavriliuk <alexandrgproductengine@lindenlab.com>2024-10-24 00:36:48 +0200
committerGuru <alexandrgproductengine@lindenlab.com>2024-10-24 09:11:32 +0200
commit297c2016a12ca4bb427572dca73206d8ba2b1888 (patch)
tree0a3d6a1b7fd033021a500650f2362ad77c3d45a5 /indra
parent4cc997bcae52f07857b16043b78d6bb8ef695398 (diff)
#2577 Worn transparent prims no longer show with 'Highlight transparent'
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/pipeline.cpp25
1 files changed, 14 insertions, 11 deletions
diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp
index 84f026699e..0b4b98d674 100644
--- a/indra/newview/pipeline.cpp
+++ b/indra/newview/pipeline.cpp
@@ -11248,21 +11248,24 @@ public:
}
};
-
+// Called from LLViewHighlightTransparent when "Highlight Transparent" is toggled
void LLPipeline::rebuildDrawInfo()
{
- for (LLWorld::region_list_t::const_iterator iter = LLWorld::getInstance()->getRegionList().begin();
- iter != LLWorld::getInstance()->getRegionList().end(); ++iter)
+ const U32 types_to_traverse[] =
{
- LLViewerRegion* region = *iter;
-
- LLOctreeDirty dirty;
-
- LLSpatialPartition* part = region->getSpatialPartition(LLViewerRegion::PARTITION_VOLUME);
- dirty.traverse(part->mOctree);
+ LLViewerRegion::PARTITION_VOLUME,
+ LLViewerRegion::PARTITION_BRIDGE,
+ LLViewerRegion::PARTITION_AVATAR
+ };
- part = region->getSpatialPartition(LLViewerRegion::PARTITION_BRIDGE);
- dirty.traverse(part->mOctree);
+ LLOctreeDirty dirty;
+ for (LLViewerRegion* region : LLWorld::getInstance()->getRegionList())
+ {
+ for (U32 type : types_to_traverse)
+ {
+ LLSpatialPartition* part = region->getSpatialPartition(type);
+ dirty.traverse(part->mOctree);
+ }
}
}