aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/lldrawable.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'linden/indra/newview/lldrawable.cpp')
-rw-r--r--linden/indra/newview/lldrawable.cpp35
1 files changed, 31 insertions, 4 deletions
diff --git a/linden/indra/newview/lldrawable.cpp b/linden/indra/newview/lldrawable.cpp
index 5a383bc..7ab5ade 100644
--- a/linden/indra/newview/lldrawable.cpp
+++ b/linden/indra/newview/lldrawable.cpp
@@ -1225,6 +1225,12 @@ void LLSpatialBridge::setVisible(LLCamera& camera_in, std::vector<LLDrawable*>*
1225 return; 1225 return;
1226 } 1226 }
1227 } 1227 }
1228// From singularity commit 69e733ea86ebd7cd5a4acb40ef87735e5c428c53 by Shyotl.
1229// TODO: Is THIS what is causing HUD monsters?
1230 else
1231 {
1232 return;
1233 }
1228 } 1234 }
1229 1235
1230 1236
@@ -1278,12 +1284,33 @@ void LLSpatialBridge::updateDistance(LLCamera& camera_in, bool force_update)
1278 return; 1284 return;
1279 } 1285 }
1280 1286
1281 LLCamera camera = transformCamera(camera_in);
1282
1283 mDrawable->updateDistance(camera, force_update);
1284
1285 if (mDrawable->getVObj()) 1287 if (mDrawable->getVObj())
1286 { 1288 {
1289
1290// Some more taken from singularity, but not sure of the origin.
1291 if (mDrawable->getVObj()->isAttachment())
1292 {
1293 LLDrawable* parent = mDrawable->getParent();
1294 if (parent)
1295 {
1296 LLViewerObject *obj = parent->getVObj();
1297 if (obj && obj->isAvatar() && ((LLVOAvatar*)obj)->isImpostor())
1298 {
1299 return;
1300 }
1301 }
1302// From singularity commit 69e733ea86ebd7cd5a4acb40ef87735e5c428c53 by Shyotl.
1303// TODO: Is THIS what is causing HUD monsters?
1304 else
1305 {
1306 return;
1307 }
1308 }
1309
1310 LLCamera camera = transformCamera(camera_in);
1311
1312 mDrawable->updateDistance(camera, force_update);
1313
1287 LLViewerObject::const_child_list_t& child_list = mDrawable->getVObj()->getChildren(); 1314 LLViewerObject::const_child_list_t& child_list = mDrawable->getVObj()->getChildren();
1288 for (LLViewerObject::child_list_t::const_iterator iter = child_list.begin(); 1315 for (LLViewerObject::child_list_t::const_iterator iter = child_list.begin();
1289 iter != child_list.end(); iter++) 1316 iter != child_list.end(); iter++)