diff options
| author | AndreyL ProductEngine <alihatskiy@productengine.com> | 2016-05-20 00:03:30 +0300 |
|---|---|---|
| committer | AndreyL ProductEngine <alihatskiy@productengine.com> | 2016-05-20 00:03:30 +0300 |
| commit | 445cd962932c1957495a35add8cf5ca4618e035b (patch) | |
| tree | d0303f3704acb804cb8281f3b7c38010afa423e6 /indra/newview/llviewerpartsim.cpp | |
| parent | 6f5f307e0a751a78fbdfb4c6a1f8757ea55bf1dd (diff) | |
| parent | c2ef3b4c7186dbbd95b16520f281b7d58364fb52 (diff) | |
Merged in lindenlab/viewer-release
Diffstat (limited to 'indra/newview/llviewerpartsim.cpp')
| -rw-r--r--[-rwxr-xr-x] | indra/newview/llviewerpartsim.cpp | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/indra/newview/llviewerpartsim.cpp b/indra/newview/llviewerpartsim.cpp index 230bdca4ef..b4617566ac 100755..100644 --- a/indra/newview/llviewerpartsim.cpp +++ b/indra/newview/llviewerpartsim.cpp @@ -39,6 +39,7 @@ #include "llworld.h" #include "pipeline.h" #include "llspatialpartition.h" +#include "llvoavatarself.h" #include "llvovolume.h" const F32 PART_SIM_BOX_SIDE = 16.f; @@ -703,16 +704,24 @@ void LLViewerPartSim::updateSimulation() if (!mViewerPartSources[i]->isDead()) { BOOL upd = TRUE; - if (!LLPipeline::sRenderAttachedParticles) + LLViewerObject* vobj = mViewerPartSources[i]->mSourceObjectp; + + if (vobj && vobj->isAvatar() && ((LLVOAvatar*)vobj)->isInMuteList()) + { + upd = FALSE; + } + + if (upd && vobj && (vobj->getPCode() == LL_PCODE_VOLUME)) { - LLViewerObject* vobj = mViewerPartSources[i]->mSourceObjectp; - if (vobj && (vobj->getPCode() == LL_PCODE_VOLUME)) + if(vobj->getAvatar() && vobj->getAvatar()->isTooComplex()) + { + upd = FALSE; + } + + LLVOVolume* vvo = (LLVOVolume *)vobj; + if (!LLPipeline::sRenderAttachedParticles && vvo && vvo->isAttachment()) { - LLVOVolume* vvo = (LLVOVolume *)vobj; - if (vvo && vvo->isAttachment()) - { - upd = FALSE; - } + upd = FALSE; } } |
