summaryrefslogtreecommitdiff
path: root/indra/newview/llwlanimator.cpp
diff options
context:
space:
mode:
authorOz Linden <oz@lindenlab.com>2017-03-06 14:31:51 -0500
committerOz Linden <oz@lindenlab.com>2017-03-06 14:31:51 -0500
commit61bddc22d97150cd590bc4184355133b6dd3ff87 (patch)
tree59b488c8c4edc51096338fab153d9eaf837d27fe /indra/newview/llwlanimator.cpp
parenta18d4df6c742aa397b70e4dafb41475bd201a558 (diff)
parent08ed7f676f2ce38937a03c2a4e823e3564981264 (diff)
merge changes for 5.0.2-release
Diffstat (limited to 'indra/newview/llwlanimator.cpp')
-rw-r--r--indra/newview/llwlanimator.cpp21
1 files changed, 16 insertions, 5 deletions
diff --git a/indra/newview/llwlanimator.cpp b/indra/newview/llwlanimator.cpp
index 2142885767..c8879e73eb 100644
--- a/indra/newview/llwlanimator.cpp
+++ b/indra/newview/llwlanimator.cpp
@@ -155,17 +155,28 @@ F64 LLWLAnimator::getDayTime()
// we're not solving the non-linear equation that determines sun phase
// we're just linearly interpolating between the major points
- if (phase <= 5.0 / 4.0) {
+
+ if (phase <= 5.0 / 4.0)
+ {
+ // mDayTime from 0.33 to 0.75 (6:00 to 21:00)
mDayTime = (1.0 / 3.0) * phase + (1.0 / 3.0);
}
+ else if (phase > 7.0 / 4.0)
+ {
+ // maximum value for phase is 2
+ // mDayTime from 0.25 to 0.33 (3:00 to 6:00)
+ mDayTime = (1.0 / 3.0) - (1.0 / 3.0) * (2 - phase);
+ }
else
{
+ // phase == 3/2 is where day restarts (24:00)
+ // mDayTime from 0.75 to 0.999 and 0 to 0.25 (21:00 to 03:00)
mDayTime = phase - (1.0 / 2.0);
- }
- if(mDayTime > 1)
- {
- mDayTime--;
+ if(mDayTime > 1)
+ {
+ mDayTime--;
+ }
}
return mDayTime;