summaryrefslogtreecommitdiff
path: root/indra/newview/llsettingsvo.cpp
diff options
context:
space:
mode:
authorJonathan "Geenz" Goodman <geenz@geenzo.com>2023-04-12 15:18:27 -0700
committerJonathan "Geenz" Goodman <geenz@geenzo.com>2023-04-12 15:18:27 -0700
commit6d5c16971654764de28833fd886f522212d3746d (patch)
tree977b913112505d09966133857c9a92fd07629431 /indra/newview/llsettingsvo.cpp
parent58df456675f37146d9a6cdaaf75c0f2b93f234c6 (diff)
parentd6b99cff8ab7550b5e0316c831087050f19c91c6 (diff)
Merge branch 'DRTVWR-559' into DRTVWR-559-post-refactor
Diffstat (limited to 'indra/newview/llsettingsvo.cpp')
-rw-r--r--indra/newview/llsettingsvo.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/indra/newview/llsettingsvo.cpp b/indra/newview/llsettingsvo.cpp
index a609c98d61..f2f269fa63 100644
--- a/indra/newview/llsettingsvo.cpp
+++ b/indra/newview/llsettingsvo.cpp
@@ -723,8 +723,20 @@ void LLSettingsVOSky::applySpecial(void *ptarget, bool force)
}
else
{
- shader->uniform3fv(LLShaderMgr::AMBIENT_LINEAR, linearColor3v(getAmbientColor() / 3.f)); // note magic number 3.f comes from SLIDER_SCALE_SUN_AMBIENT
- shader->uniform3fv(LLShaderMgr::AMBIENT, LLVector3(ambient.mV));
+ if (psky->getReflectionProbeAmbiance() == 0.f)
+ {
+ LLVector3 ambcol(ambient.mV);
+ F32 cloud_shadow = psky->getCloudShadow();
+ LLVector3 tmpAmbient = ambcol + ((LLVector3::all_one - ambcol) * cloud_shadow * 0.5f);
+
+ shader->uniform3fv(LLShaderMgr::AMBIENT_LINEAR, linearColor3v(tmpAmbient));
+ shader->uniform3fv(LLShaderMgr::AMBIENT, tmpAmbient.mV);
+ }
+ else
+ {
+ shader->uniform3fv(LLShaderMgr::AMBIENT_LINEAR, linearColor3v(getAmbientColor() / 3.f)); // note magic number 3.f comes from SLIDER_SCALE_SUN_AMBIENT
+ shader->uniform3fv(LLShaderMgr::AMBIENT, LLVector3(ambient.mV));
+ }
}
shader->uniform3fv(LLShaderMgr::BLUE_HORIZON_LINEAR, linearColor3v(getBlueHorizon() / 2.f)); // note magic number of 2.f comes from SLIDER_SCALE_BLUE_HORIZON_DENSITY