summaryrefslogtreecommitdiff
path: root/indra/newview/llenvironment.cpp
diff options
context:
space:
mode:
authorRider Linden <rider@lindenlab.com>2018-06-12 12:39:59 -0700
committerRider Linden <rider@lindenlab.com>2018-06-12 12:39:59 -0700
commit2add1e7abdf536b32bfbfa4b353189782df8cb19 (patch)
tree35866e89acb21c13a6c14e078e6f45fc8d384126 /indra/newview/llenvironment.cpp
parent0f608cb764856ae8586a9d9631842a782cb70a23 (diff)
Time threshold on timer based updates. Editor can replace frame with one from inventory. Extra check on adding a frame type.
Diffstat (limited to 'indra/newview/llenvironment.cpp')
-rw-r--r--indra/newview/llenvironment.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/indra/newview/llenvironment.cpp b/indra/newview/llenvironment.cpp
index a5ee7d0737..632f16c7fa 100644
--- a/indra/newview/llenvironment.cpp
+++ b/indra/newview/llenvironment.cpp
@@ -65,6 +65,8 @@ namespace
LLTrace::BlockTimerStatHandle FTM_ENVIRONMENT_UPDATE("Update Environment Tick");
LLTrace::BlockTimerStatHandle FTM_SHADER_PARAM_UPDATE("Update Shader Parameters");
+ LLSettingsBase::Seconds DEFAULT_UPDATE_THRESHOLD(10.0);
+
//---------------------------------------------------------------------
inline LLSettingsBase::TrackPosition get_wrapping_distance(LLSettingsBase::TrackPosition begin, LLSettingsBase::TrackPosition end)
{
@@ -132,13 +134,15 @@ namespace
class LLTrackBlenderLoopingTime : public LLSettingsBlenderTimeDelta
{
public:
- LLTrackBlenderLoopingTime(const LLSettingsBase::ptr_t &target, const LLSettingsDay::ptr_t &day, S32 trackno, LLSettingsBase::Seconds cyclelength, LLSettingsBase::Seconds cycleoffset) :
+ LLTrackBlenderLoopingTime(const LLSettingsBase::ptr_t &target, const LLSettingsDay::ptr_t &day, S32 trackno,
+ LLSettingsBase::Seconds cyclelength, LLSettingsBase::Seconds cycleoffset, LLSettingsBase::Seconds updateThreshold) :
LLSettingsBlenderTimeDelta(target, LLSettingsBase::ptr_t(), LLSettingsBase::ptr_t(), LLSettingsBase::Seconds(1.0)),
mDay(day),
mTrackNo(0),
mCycleLength(cyclelength),
mCycleOffset(cycleoffset)
{
+ setTimeDeltaThreshold(updateThreshold);
// must happen prior to getBoundingEntries call...
mTrackNo = selectTrackNumber(trackno);
@@ -1556,10 +1560,11 @@ void LLEnvironment::DayInstance::animate()
else
{
mWater = LLSettingsVOWater::buildDefaultWater();
- mBlenderWater = std::make_shared<LLTrackBlenderLoopingTime>(mWater, mDayCycle, 0, mDayLength, mDayOffset);
+ mBlenderWater = std::make_shared<LLTrackBlenderLoopingTime>(mWater, mDayCycle, 0,
+ mDayLength, mDayOffset, DEFAULT_UPDATE_THRESHOLD);
}
- // sky, initalize to track 1
+ // sky, initialize to track 1
LLSettingsDay::CycleTrack_t &track = mDayCycle->getCycleTrack(1);
if (track.empty())
@@ -1570,7 +1575,8 @@ void LLEnvironment::DayInstance::animate()
else
{
mSky = LLSettingsVOSky::buildDefaultSky();
- mBlenderSky = std::make_shared<LLTrackBlenderLoopingTime>(mSky, mDayCycle, 1, mDayLength, mDayOffset);
+ mBlenderSky = std::make_shared<LLTrackBlenderLoopingTime>(mSky, mDayCycle, 1,
+ mDayLength, mDayOffset, DEFAULT_UPDATE_THRESHOLD);
mBlenderSky->switchTrack(mSkyTrack, 0.0);
}
}