diff options
Diffstat (limited to 'indra/newview/app_settings/shaders/class2/deferred')
| -rw-r--r-- | indra/newview/app_settings/shaders/class2/deferred/pbralphaF.glsl | 7 | ||||
| -rw-r--r-- | indra/newview/app_settings/shaders/class2/deferred/reflectionProbeF.glsl | 15 | 
2 files changed, 8 insertions, 14 deletions
diff --git a/indra/newview/app_settings/shaders/class2/deferred/pbralphaF.glsl b/indra/newview/app_settings/shaders/class2/deferred/pbralphaF.glsl index f4a8051427..95110005dc 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/pbralphaF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/pbralphaF.glsl @@ -111,13 +111,6 @@ vec3 pbrBaseLight(vec3 diffuseColor,                    vec3 additive,                    vec3 atten); -vec3 pbrPunctual(vec3 diffuseColor, vec3 specularColor, -                    float perceptualRoughness, -                    float metallic, -                    vec3 n, // normal -                    vec3 v, // surface point to camera -                    vec3 l); //surface point to light -  vec3 pbrCalcPointLightOrSpotLight(vec3 diffuseColor, vec3 specularColor,                      float perceptualRoughness,                      float metallic, diff --git a/indra/newview/app_settings/shaders/class2/deferred/reflectionProbeF.glsl b/indra/newview/app_settings/shaders/class2/deferred/reflectionProbeF.glsl index 35848ff4cd..2657b2b54e 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/reflectionProbeF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/reflectionProbeF.glsl @@ -32,12 +32,13 @@ uniform samplerCube environmentMap;  uniform mat3 env_mat;  vec3 srgb_to_linear(vec3 c); +vec3 linear_to_srgb(vec3 c);  void sampleReflectionProbes(inout vec3 ambenv, inout vec3 glossenv,          vec2 tc, vec3 pos, vec3 norm, float glossiness, bool transparent, vec3 amblit_linear)  { -    ambenv = vec3(reflection_probe_ambiance * 0.25); -     +    ambenv = mix(ambenv, vec3(reflection_probe_ambiance * 0.25), reflection_probe_ambiance); +      vec3 refnormpersp = normalize(reflect(pos.xyz, norm.xyz));      vec3 env_vec = env_mat * refnormpersp;      glossenv = srgb_to_linear(texture(environmentMap, env_vec).rgb); @@ -58,23 +59,23 @@ vec4 sampleReflectionProbesDebug(vec3 pos)  void sampleReflectionProbesLegacy(out vec3 ambenv, out vec3 glossenv, out vec3 legacyenv,          vec2 tc, vec3 pos, vec3 norm, float glossiness, float envIntensity, bool transparent, vec3 amblit_linear)  { -    ambenv = vec3(reflection_probe_ambiance * 0.25); -     +    ambenv = mix(ambenv, vec3(reflection_probe_ambiance * 0.25), reflection_probe_ambiance); +      vec3 refnormpersp = normalize(reflect(pos.xyz, norm.xyz));      vec3 env_vec = env_mat * refnormpersp; -    legacyenv = srgb_to_linear(texture(environmentMap, env_vec).rgb); +    legacyenv = texture(environmentMap, env_vec).rgb;      glossenv = legacyenv;  }  void applyGlossEnv(inout vec3 color, vec3 glossenv, vec4 spec, vec3 pos, vec3 norm)  { -     +  }  void applyLegacyEnv(inout vec3 color, vec3 legacyenv, vec4 spec, vec3 pos, vec3 norm, float envIntensity)  { -    color = mix(color.rgb, legacyenv*1.5, envIntensity); +    color = srgb_to_linear(mix(linear_to_srgb(color.rgb), legacyenv*2.0, envIntensity));  }  | 
