SNOW-684 VWR-4232 : Some particles don't disappear when UI is hidden
parent
be07498847
commit
6d8208bac9
|
|
@ -402,6 +402,7 @@ Michelle2 Zenovka
|
|||
Mm Alder
|
||||
VWR-197
|
||||
VWR-3777
|
||||
VWR-4232
|
||||
VWR-4794
|
||||
VWR-13578
|
||||
Mr Greggan
|
||||
|
|
|
|||
|
|
@ -305,6 +305,11 @@ void LLHUDEffectBeam::render()
|
|||
}
|
||||
}
|
||||
|
||||
void LLHUDEffectBeam::renderForTimer()
|
||||
{
|
||||
render();
|
||||
}
|
||||
|
||||
void LLHUDEffectBeam::setupParticle(const S32 i)
|
||||
{
|
||||
LLVector3d start_pos_global;
|
||||
|
|
|
|||
|
|
@ -52,6 +52,7 @@ protected:
|
|||
~LLHUDEffectBeam();
|
||||
|
||||
/*virtual*/ void render();
|
||||
/*virtual*/ void renderForTimer();
|
||||
/*virtual*/ void packData(LLMessageSystem *mesgsys);
|
||||
/*virtual*/ void unpackData(LLMessageSystem *mesgsys, S32 blocknum);
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -280,3 +280,8 @@ void LLHUDEffectSpiral::render()
|
|||
return;
|
||||
}
|
||||
}
|
||||
|
||||
void LLHUDEffectSpiral::renderForTimer()
|
||||
{
|
||||
render();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -62,6 +62,7 @@ protected:
|
|||
~LLHUDEffectSpiral();
|
||||
|
||||
/*virtual*/ void render();
|
||||
/*virtual*/ void renderForTimer();
|
||||
/*virtual*/ void packData(LLMessageSystem *mesgsys);
|
||||
/*virtual*/ void unpackData(LLMessageSystem *mesgsys, S32 blocknum);
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -304,6 +304,27 @@ void LLHUDObject::renderAllForSelect()
|
|||
}
|
||||
}
|
||||
|
||||
// static
|
||||
void LLHUDObject::renderAllForTimer()
|
||||
{
|
||||
LLHUDObject *hud_objp;
|
||||
|
||||
hud_object_list_t::iterator object_it;
|
||||
for (object_it = sHUDObjects.begin(); object_it != sHUDObjects.end(); )
|
||||
{
|
||||
hud_object_list_t::iterator cur_it = object_it++;
|
||||
hud_objp = (*cur_it);
|
||||
if (hud_objp->getNumRefs() == 1)
|
||||
{
|
||||
sHUDObjects.erase(cur_it);
|
||||
}
|
||||
else if (hud_objp->isVisible())
|
||||
{
|
||||
hud_objp->renderForTimer();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// static
|
||||
void LLHUDObject::sortObjects()
|
||||
{
|
||||
|
|
|
|||
|
|
@ -69,6 +69,7 @@ public:
|
|||
static void updateAll();
|
||||
static void renderAll();
|
||||
static void renderAllForSelect();
|
||||
static void renderAllForTimer();
|
||||
|
||||
static void cleanupHUDObjects();
|
||||
|
||||
|
|
@ -100,6 +101,7 @@ protected:
|
|||
|
||||
virtual void render() = 0;
|
||||
virtual void renderForSelect() {};
|
||||
virtual void renderForTimer() {};
|
||||
|
||||
protected:
|
||||
U8 mType;
|
||||
|
|
|
|||
|
|
@ -3211,11 +3211,24 @@ void LLPipeline::renderGeom(LLCamera& camera, BOOL forceVBOUpdate)
|
|||
|
||||
LLVertexBuffer::unbind();
|
||||
|
||||
if (!LLPipeline::sReflectionRender && !LLPipeline::sRenderDeferred && gPipeline.hasRenderDebugFeatureMask(LLPipeline::RENDER_DEBUG_FEATURE_UI))
|
||||
if (!LLPipeline::sReflectionRender && !LLPipeline::sRenderDeferred)
|
||||
{
|
||||
// Render debugging beacons.
|
||||
gObjectList.renderObjectBeacons();
|
||||
gObjectList.resetObjectBeacons();
|
||||
if (gPipeline.hasRenderDebugFeatureMask(LLPipeline::RENDER_DEBUG_FEATURE_UI))
|
||||
{
|
||||
// Render debugging beacons.
|
||||
gObjectList.renderObjectBeacons();
|
||||
gObjectList.resetObjectBeacons();
|
||||
}
|
||||
else
|
||||
{
|
||||
// Make sure particle effects disappear
|
||||
LLHUDObject::renderAllForTimer();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Make sure particle effects disappear
|
||||
LLHUDObject::renderAllForTimer();
|
||||
}
|
||||
|
||||
LLAppViewer::instance()->pingMainloopTimeout("Pipeline:RenderGeomEnd");
|
||||
|
|
|
|||
Loading…
Reference in New Issue