summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMnikolenko Productengine <mnikolenko@productengine.com>2021-09-06 19:53:43 +0300
committerMnikolenko Productengine <mnikolenko@productengine.com>2021-09-06 19:53:43 +0300
commita1fcaa38983eb9a497415c9fddf5d1cecde57eb5 (patch)
tree9bf1bb35c34762ab961069eb1b0fa14951bf86f2
parent56dc2643f29f0cfd99aaeecee3d3b246a1ded830 (diff)
SL-15944 Don't show animeshes and local lights attached to the avatar when ‘Hide all avatars' is enabled
-rw-r--r--indra/newview/lldrawpoolavatar.cpp2
-rw-r--r--indra/newview/llfloater360capture.cpp3
2 files changed, 4 insertions, 1 deletions
diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp
index 687b13d2c8..eb0bd0de4e 100644
--- a/indra/newview/lldrawpoolavatar.cpp
+++ b/indra/newview/lldrawpoolavatar.cpp
@@ -1526,7 +1526,7 @@ void LLDrawPoolAvatar::renderAvatars(LLVOAvatar* single_avatar, S32 pass)
}
LLVOAvatar *attached_av = avatarp->getAttachedAvatar();
- if (attached_av && LLVOAvatar::AOA_NORMAL != attached_av->getOverallAppearance())
+ if (attached_av && (LLVOAvatar::AOA_NORMAL != attached_av->getOverallAppearance() || !gPipeline.hasRenderType(LLPipeline::RENDER_TYPE_AVATAR)))
{
// Animesh attachment of a jellydolled or invisible parent - don't show
return;
diff --git a/indra/newview/llfloater360capture.cpp b/indra/newview/llfloater360capture.cpp
index a0e50a5582..745f154535 100644
--- a/indra/newview/llfloater360capture.cpp
+++ b/indra/newview/llfloater360capture.cpp
@@ -492,6 +492,7 @@ void LLFloater360Capture::capture360Images()
mCaptureBtn->setEnabled(false);
mSaveLocalBtn->setEnabled(false);
+ bool render_attached_lights = LLPipeline::sRenderAttachedLights;
// determine whether or not to include avatar in the scene as we capture the 360 panorama
if (gSavedSettings.getBOOL("360CaptureHideAvatars"))
{
@@ -505,6 +506,7 @@ void LLFloater360Capture::capture360Images()
// was set to off - I think this is what we need
LLPipeline::toggleRenderTypeControl(LLPipeline::RENDER_TYPE_AVATAR);
LLPipeline::toggleRenderTypeControl(LLPipeline::RENDER_TYPE_PARTICLES);
+ LLPipeline::sRenderAttachedLights = FALSE;
}
// these are the 6 directions we will point the camera - essentially,
@@ -654,6 +656,7 @@ void LLFloater360Capture::capture360Images()
{
LLPipeline::toggleRenderTypeControl(LLPipeline::RENDER_TYPE_AVATAR);
LLPipeline::toggleRenderTypeControl(LLPipeline::RENDER_TYPE_PARTICLES);
+ LLPipeline::sRenderAttachedLights = render_attached_lights;
}
// record that we missed some shots in the log for later debugging