summaryrefslogtreecommitdiff
path: root/indra/newview/app_settings/shaders/class1/deferred
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/app_settings/shaders/class1/deferred')
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/SMAA.glsl19
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/avatarAlphaMaskShadowF.glsl4
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/avatarAlphaShadowF.glsl4
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl4
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/pbrShadowAlphaBlendF.glsl4
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/pbrShadowAlphaMaskF.glsl4
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl4
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl4
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/shadowUtil.glsl9
-rw-r--r--indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl4
10 files changed, 39 insertions, 21 deletions
diff --git a/indra/newview/app_settings/shaders/class1/deferred/SMAA.glsl b/indra/newview/app_settings/shaders/class1/deferred/SMAA.glsl
index fdb77cce6e..60a8300352 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/SMAA.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/SMAA.glsl
@@ -1351,6 +1351,10 @@ float4 SMAABlendingWeightCalculationPS(float2 texcoord,
//-----------------------------------------------------------------------------
// Neighborhood Blending Pixel Shader (Third Pass)
+vec3 srgb_to_linear(vec3 cs);
+vec4 srgb_to_linear4(vec4 cs);
+vec3 linear_to_srgb(vec3 cl);
+
float4 SMAANeighborhoodBlendingPS(float2 texcoord,
float4 offset,
SMAATexture2D(colorTex),
@@ -1369,6 +1373,7 @@ float4 SMAANeighborhoodBlendingPS(float2 texcoord,
SMAA_BRANCH
if (dot(a, float4(1.0, 1.0, 1.0, 1.0)) < 1e-5) {
float4 color = SMAASampleLevelZero(colorTex, texcoord);
+ color.rgb = srgb_to_linear(color.rgb);
#if SMAA_REPROJECTION
float2 velocity = SMAA_DECODE_VELOCITY(SMAASampleLevelZero(velocityTex, texcoord));
@@ -1377,6 +1382,8 @@ float4 SMAANeighborhoodBlendingPS(float2 texcoord,
color.a = sqrt(5.0 * length(velocity));
#endif
+ color.rgb = linear_to_srgb(color.rgb);
+
return color;
} else {
bool h = max(a.x, a.z) > max(a.y, a.w); // max(horizontal) > max(vertical)
@@ -1393,8 +1400,15 @@ float4 SMAANeighborhoodBlendingPS(float2 texcoord,
// We exploit bilinear filtering to mix current pixel with the chosen
// neighbor:
- float4 color = blendingWeight.x * SMAASampleLevelZero(colorTex, blendingCoord.xy);
- color += blendingWeight.y * SMAASampleLevelZero(colorTex, blendingCoord.zw);
+ //float4 color = blendingWeight.x * SMAASampleLevelZero(colorTex, blendingCoord.xy);
+ //color += blendingWeight.y * SMAASampleLevelZero(colorTex, blendingCoord.zw);
+ float4 color = SMAASampleLevelZero(colorTex, blendingCoord.xy);
+ color.rgb = srgb_to_linear(color.rgb);
+ color = blendingWeight.x * color;
+
+ float4 color2 = SMAASampleLevelZero(colorTex, blendingCoord.zw);
+ color2.rgb = srgb_to_linear(color2.rgb);
+ color += blendingWeight.y * color2;
#if SMAA_REPROJECTION
// Antialias velocity for proper reprojection in a later stage:
@@ -1405,6 +1419,7 @@ float4 SMAANeighborhoodBlendingPS(float2 texcoord,
color.a = sqrt(5.0 * length(velocity));
#endif
+ color.rgb = linear_to_srgb(color.rgb);
return color;
}
}
diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaMaskShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaMaskShadowF.glsl
index f1e0295859..084a334346 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaMaskShadowF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaMaskShadowF.glsl
@@ -23,7 +23,7 @@
* $/LicenseInfo$
*/
-out vec4 frag_color;
+//out vec4 frag_color;
uniform float minimum_alpha;
uniform sampler2D diffuseMap;
@@ -49,5 +49,5 @@ void main()
}
}
- frag_color = vec4(1,1,1,1);
+ //frag_color = vec4(1,1,1,1);
}
diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaShadowF.glsl
index 18ce998cb6..5986e8e462 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaShadowF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/avatarAlphaShadowF.glsl
@@ -23,7 +23,7 @@
* $/LicenseInfo$
*/
-out vec4 frag_color;
+//out vec4 frag_color;
uniform float minimum_alpha;
@@ -51,5 +51,5 @@ void main()
}
}
- frag_color = vec4(1,1,1,1);
+ //frag_color = vec4(1,1,1,1);
}
diff --git a/indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl
index 37dcbbd328..4396ae89a4 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/avatarShadowF.glsl
@@ -25,10 +25,10 @@
/*[EXTRA_CODE_HERE]*/
-out vec4 frag_color;
+//out vec4 frag_color;
void main()
{
- frag_color = vec4(1,1,1,1);
+ //frag_color = vec4(1,1,1,1);
}
diff --git a/indra/newview/app_settings/shaders/class1/deferred/pbrShadowAlphaBlendF.glsl b/indra/newview/app_settings/shaders/class1/deferred/pbrShadowAlphaBlendF.glsl
index dbaab9bbda..90d81ab6b2 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/pbrShadowAlphaBlendF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/pbrShadowAlphaBlendF.glsl
@@ -23,7 +23,7 @@
* $/LicenseInfo$
*/
-out vec4 frag_color;
+//out vec4 frag_color;
uniform sampler2D diffuseMap;
@@ -52,5 +52,5 @@ void main()
}
}
- frag_color = vec4(1,1,1,1);
+ //frag_color = vec4(1,1,1,1);
}
diff --git a/indra/newview/app_settings/shaders/class1/deferred/pbrShadowAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/deferred/pbrShadowAlphaMaskF.glsl
index 07a2218db2..2b314db51a 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/pbrShadowAlphaMaskF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/pbrShadowAlphaMaskF.glsl
@@ -23,7 +23,7 @@
* $/LicenseInfo$
*/
-out vec4 frag_color;
+//out vec4 frag_color;
uniform sampler2D diffuseMap;
@@ -42,5 +42,5 @@ void main()
discard;
}
- frag_color = vec4(1,1,1,1);
+ //frag_color = vec4(1,1,1,1);
}
diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl
index f208ac746b..a37e970feb 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl
@@ -25,7 +25,7 @@
/*[EXTRA_CODE_HERE]*/
-out vec4 frag_color;
+//out vec4 frag_color;
in vec4 post_pos;
in float target_pos_x;
@@ -59,5 +59,5 @@ void main()
}
}
- frag_color = vec4(1,1,1,1);
+ //frag_color = vec4(1,1,1,1);
}
diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl
index b55d769fd6..c4e4c4d051 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/shadowF.glsl
@@ -23,9 +23,9 @@
* $/LicenseInfo$
*/
-out vec4 frag_color;
+//out vec4 frag_color;
void main()
{
- frag_color = vec4(1,1,1,1);
+ //frag_color = vec4(1,1,1,1);
}
diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowUtil.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowUtil.glsl
index 6f7bd2bf3c..033c2f924a 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/shadowUtil.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/shadowUtil.glsl
@@ -113,8 +113,8 @@ float sampleDirectionalShadow(vec3 pos, vec3 norm, vec2 pos_screen)
if (spos.z > -shadow_clip.w)
{
vec4 lpos;
- vec4 near_split = shadow_clip*-0.75;
- vec4 far_split = shadow_clip*-1.25;
+ vec4 near_split = shadow_clip*-0.9;
+ vec4 far_split = shadow_clip*-1.1;
vec4 transition_domain = near_split-far_split;
float weight = 0.0;
@@ -131,7 +131,10 @@ float sampleDirectionalShadow(vec3 pos, vec3 norm, vec2 pos_screen)
shadow += contrib;
weight += w;
}
- shadow += max((pos.z+shadow_clip.z)/(shadow_clip.z-shadow_clip.w)*2.0-1.0, 0.0);
+
+ //shadow += max( (pos.z+shadow_clip.z) / (shadow_clip.z-shadow_clip.w) * 2.0 - 1.0, 0.0);
+ shadow += max( (pos.z+shadow_clip.z) / (shadow_clip.z-shadow_clip.w) * 1.0, 0.0);
+ //shadow -= max( (shadow_clip.z + pos.z) / (shadow_clip.z - shadow_clip.w) , 0.0);
}
if (spos.z < near_split.y && spos.z > far_split.z)
diff --git a/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl
index 33a5efa45d..4579d4fbe0 100644
--- a/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl
+++ b/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl
@@ -26,7 +26,7 @@
/*[EXTRA_CODE_HERE]*/
-out vec4 frag_color;
+//out vec4 frag_color;
uniform float minimum_alpha;
@@ -43,5 +43,5 @@ void main()
discard;
}
- frag_color = vec4(1,1,1,1);
+ //frag_color = vec4(1,1,1,1);
}