summaryrefslogtreecommitdiff
path: root/indra/newview/llwlparamset.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llwlparamset.cpp')
-rw-r--r--indra/newview/llwlparamset.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/indra/newview/llwlparamset.cpp b/indra/newview/llwlparamset.cpp
index 482a2a61e2..066cb9a0ac 100644
--- a/indra/newview/llwlparamset.cpp
+++ b/indra/newview/llwlparamset.cpp
@@ -288,6 +288,14 @@ void LLWLParamSet::mix(LLWLParamSet& src, LLWLParamSet& dest, F32 weight)
{
// set up the iterators
+ // keep cloud positions and coverage the same
+ /// TODO masking will do this later
+ F32 cloudPos1X = (F32) mParamValues["cloud_pos_density1"][0].asReal();
+ F32 cloudPos1Y = (F32) mParamValues["cloud_pos_density1"][1].asReal();
+ F32 cloudPos2X = (F32) mParamValues["cloud_pos_density2"][0].asReal();
+ F32 cloudPos2Y = (F32) mParamValues["cloud_pos_density2"][1].asReal();
+ F32 cloudCover = (F32) mParamValues["cloud_shadow"][0].asReal();
+
LLSD srcVal;
LLSD destVal;
@@ -371,6 +379,15 @@ void LLWLParamSet::mix(LLWLParamSet& src, LLWLParamSet& dest, F32 weight)
setSunAngle((1 - weight) * srcSunAngle + weight * destSunAngle);
setEastAngle((1 - weight) * srcEastAngle + weight * destEastAngle);
+
+ // now setup the sun properly
+
+ // reset those cloud positions
+ mParamValues["cloud_pos_density1"][0] = cloudPos1X;
+ mParamValues["cloud_pos_density1"][1] = cloudPos1Y;
+ mParamValues["cloud_pos_density2"][0] = cloudPos2X;
+ mParamValues["cloud_pos_density2"][1] = cloudPos2Y;
+ mParamValues["cloud_shadow"][0] = cloudCover;
}
void LLWLParamSet::updateCloudScrolling(void)