From 08dd04aa98f9071d87a26573fb2807aaac1852eb Mon Sep 17 00:00:00 2001
From: Graham Linden <graham@lindenlab.com>
Date: Tue, 18 Sep 2018 19:47:50 +0100
Subject: SL-1176

Tweak position of sun in disc shader to better match the offset applied to the sun glow in atmospherics.
---
 indra/newview/app_settings/shaders/class1/deferred/sunDiscV.glsl  | 2 +-
 indra/newview/app_settings/shaders/class1/windlight/sunDiscV.glsl | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

(limited to 'indra')

diff --git a/indra/newview/app_settings/shaders/class1/deferred/sunDiscV.glsl b/indra/newview/app_settings/shaders/class1/deferred/sunDiscV.glsl
index 5b4302e237..c67ed8e6d9 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/sunDiscV.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/sunDiscV.glsl
@@ -37,7 +37,7 @@ void calcAtmospherics(vec3 eye_pos);
 void main()
 {
 	//transform vertex
-	vec4 vert = vec4(position.xyz, 1.0);
+	vec4 vert = vec4(position.xyz - vec3(0, 0, 50), 1.0);
 	vec4 pos  = modelview_projection_matrix*vert;
 
 	gl_Position = pos;
diff --git a/indra/newview/app_settings/shaders/class1/windlight/sunDiscV.glsl b/indra/newview/app_settings/shaders/class1/windlight/sunDiscV.glsl
index 90acb5be9e..dd33a4be60 100644
--- a/indra/newview/app_settings/shaders/class1/windlight/sunDiscV.glsl
+++ b/indra/newview/app_settings/shaders/class1/windlight/sunDiscV.glsl
@@ -37,7 +37,7 @@ void calcAtmospherics(vec3 eye_pos);
 void main()
 {
 	//transform vertex
-	vec4 vert = vec4(position.xyz, 1.0);
+	vec4 vert = vec4(position.xyz - vec3(0, 0, 50), 1.0);
 	vec4 pos = modelview_projection_matrix*vert;
 
 	gl_Position = pos;
-- 
cgit v1.2.3


From 862b8f72dc4d89e88b0c03992dad393aff9451a5 Mon Sep 17 00:00:00 2001
From: Graham Linden <graham@lindenlab.com>
Date: Tue, 18 Sep 2018 20:31:26 +0100
Subject: SL-9685

Make sure legacy opaque water texture ID is assigned so it can be bound for lowest graphics use.
---
 indra/newview/lldrawpoolwater.cpp | 4 ++--
 indra/newview/lldrawpoolwater.h   | 2 +-
 indra/newview/llsettingsvo.cpp    | 1 +
 3 files changed, 4 insertions(+), 3 deletions(-)

(limited to 'indra')

diff --git a/indra/newview/lldrawpoolwater.cpp b/indra/newview/lldrawpoolwater.cpp
index 7f1601e604..4dd0d3ec98 100644
--- a/indra/newview/lldrawpoolwater.cpp
+++ b/indra/newview/lldrawpoolwater.cpp
@@ -76,10 +76,10 @@ void LLDrawPoolWater::setTransparentTextures(const LLUUID& transparentTextureId,
     mWaterImagep[1]->addTextureStats(1024.f*1024.f);
 }
 
-void LLDrawPoolWater::setOpaqueTexture()
+void LLDrawPoolWater::setOpaqueTexture(const LLUUID& opaqueTextureId)
 {
     LLSettingsWater::ptr_t pwater = LLEnvironment::instance().getCurrentWater();
-    mOpaqueWaterImagep = LLViewerTextureManager::getFetchedTexture(pwater->GetDefaultOpaqueTextureAssetId());
+    mOpaqueWaterImagep = LLViewerTextureManager::getFetchedTexture(opaqueTextureId);
     mOpaqueWaterImagep->addTextureStats(1024.f*1024.f);
 }
 
diff --git a/indra/newview/lldrawpoolwater.h b/indra/newview/lldrawpoolwater.h
index 3c1587885e..f14ac1f6d2 100644
--- a/indra/newview/lldrawpoolwater.h
+++ b/indra/newview/lldrawpoolwater.h
@@ -83,7 +83,7 @@ public:
 	void shade();
 
     void setTransparentTextures(const LLUUID& transparentTextureId, const LLUUID& nextTransparentTextureId);
-    void setOpaqueTexture();
+    void setOpaqueTexture(const LLUUID& opaqueTextureId);
     void setNormalMaps(const LLUUID& normalMapId, const LLUUID& nextNormalMapId);
 
 protected:
diff --git a/indra/newview/llsettingsvo.cpp b/indra/newview/llsettingsvo.cpp
index b16ba65c01..583adcb024 100644
--- a/indra/newview/llsettingsvo.cpp
+++ b/indra/newview/llsettingsvo.cpp
@@ -851,6 +851,7 @@ void LLSettingsVOWater::updateSettings()
     if (pwaterpool)
     {
         pwaterpool->setTransparentTextures(getTransparentTextureID(), getNextTransparentTextureID());
+        pwaterpool->setOpaqueTexture(GetDefaultOpaqueTextureAssetId());
         pwaterpool->setNormalMaps(getNormalMapID(), getNextNormalMapID());
     }
 }
-- 
cgit v1.2.3