diff options
author | Jonathan "Geenz" Goodman <geenz@lindenlab.com> | 2024-11-25 20:56:03 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-25 20:56:03 -0500 |
commit | d65fb7cec8ce36ce7f6ff082f8d04bdd8bc0208c (patch) | |
tree | 0005e8ec095fb31dcd4f8b079af585e3333c365f /indra/newview/app_settings/shaders/class2 | |
parent | 7ef6e8fce763eb529ed160ea4ff11e6125e32ed5 (diff) |
Drop emissive on old Intel GPUs (#3110)
* #3103 Add the ability to disable the emissive buffer for older GPUs with low memory bandwidth.
* #3135 Add a "vintage" mode for slower GPUs
* #2719 Fix for skies being overbrightened
* #2632 Do not apply tonemapping on legacy skies
Diffstat (limited to 'indra/newview/app_settings/shaders/class2')
-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 | 9 |
2 files changed, 5 insertions, 11 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 d178bf22b6..c43582e185 100644 --- a/indra/newview/app_settings/shaders/class2/deferred/reflectionProbeF.glsl +++ b/indra/newview/app_settings/shaders/class2/deferred/reflectionProbeF.glsl @@ -32,11 +32,12 @@ 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; @@ -58,12 +59,12 @@ vec4 sampleReflectionProbesDebug(vec3 pos) void sampleReflectionProbesLegacy(inout vec3 ambenv, inout vec3 glossenv, inout 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; } @@ -75,6 +76,6 @@ void applyGlossEnv(inout vec3 color, vec3 glossenv, vec4 spec, vec3 pos, vec3 no 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)); } |