SL-11621
Remove all references to unused shader var global_gamma. Remove many unused decls for gamma from shaders. Make post-deferred gamma correction use display_gamma. Make setting display_gamma use the correct RenderDeferredDisplayGamma setting.master
parent
230c9b68d8
commit
b507d63566
|
|
@ -1305,8 +1305,6 @@ void LLShaderMgr::initAttribsAndUniforms()
|
|||
mReservedUniforms.push_back("bloomMap");
|
||||
mReservedUniforms.push_back("projectionMap");
|
||||
mReservedUniforms.push_back("norm_mat");
|
||||
|
||||
mReservedUniforms.push_back("global_gamma");
|
||||
mReservedUniforms.push_back("texture_gamma");
|
||||
|
||||
mReservedUniforms.push_back("specular_color");
|
||||
|
|
|
|||
|
|
@ -173,10 +173,7 @@ public:
|
|||
DEFERRED_BLOOM,
|
||||
DEFERRED_PROJECTION,
|
||||
DEFERRED_NORM_MATRIX,
|
||||
|
||||
GLOBAL_GAMMA,
|
||||
TEXTURE_GAMMA,
|
||||
|
||||
TEXTURE_GAMMA,
|
||||
SPECULAR_COLOR,
|
||||
ENVIRONMENT_INTENSITY,
|
||||
|
||||
|
|
|
|||
|
|
@ -37,10 +37,7 @@ out vec4 frag_color;
|
|||
#define frag_color gl_FragColor
|
||||
#endif
|
||||
|
||||
uniform float display_gamma;
|
||||
uniform vec4 gamma;
|
||||
uniform mat3 env_mat;
|
||||
|
||||
uniform vec3 sun_dir;
|
||||
uniform vec3 moon_dir;
|
||||
|
||||
|
|
|
|||
|
|
@ -43,7 +43,6 @@ uniform sampler2D cloud_noise_texture_next;
|
|||
uniform float blend_factor;
|
||||
uniform vec4 cloud_pos_density1;
|
||||
uniform vec4 cloud_pos_density2;
|
||||
uniform vec4 gamma;
|
||||
uniform float cloud_scale;
|
||||
uniform float cloud_variance;
|
||||
|
||||
|
|
|
|||
|
|
@ -31,7 +31,6 @@
|
|||
#define DIFFUSE_ALPHA_MODE_EMISSIVE 3
|
||||
|
||||
uniform float emissive_brightness;
|
||||
uniform float display_gamma;
|
||||
uniform int sun_up_factor;
|
||||
|
||||
#ifdef WATER_FOG
|
||||
|
|
@ -64,8 +63,6 @@ uniform sampler2D lightFunc;
|
|||
// Inputs
|
||||
uniform vec4 morphFactor;
|
||||
uniform vec3 camPosLocal;
|
||||
//uniform vec4 camPosWorld;
|
||||
uniform vec4 gamma;
|
||||
uniform mat3 env_mat;
|
||||
|
||||
uniform vec3 sun_dir;
|
||||
|
|
|
|||
|
|
@ -37,7 +37,6 @@ uniform sampler2DRect diffuseRect;
|
|||
|
||||
uniform vec2 screen_res;
|
||||
VARYING vec2 vary_fragcoord;
|
||||
|
||||
uniform float display_gamma;
|
||||
|
||||
vec3 linear_to_srgb(vec3 cl);
|
||||
|
|
@ -45,7 +44,7 @@ vec3 linear_to_srgb(vec3 cl);
|
|||
void main()
|
||||
{
|
||||
vec4 diff = texture2DRect(diffuseRect, vary_fragcoord);
|
||||
diff.rgb = linear_to_srgb(diff.rgb);
|
||||
diff.rgb = pow(diff.rgb, vec3(display_gamma));
|
||||
frag_color = diff;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -37,8 +37,6 @@ out vec4 frag_data[3];
|
|||
|
||||
VARYING vec4 vary_HazeColor;
|
||||
|
||||
uniform vec4 gamma;
|
||||
|
||||
/// Soft clips the light with a gamma correction
|
||||
vec3 scaleSoftClip(vec3 light);
|
||||
vec3 srgb_to_linear(vec3 c);
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@
|
|||
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
|
||||
* $/LicenseInfo$
|
||||
*/
|
||||
uniform vec4 gamma;
|
||||
uniform vec4 lightnorm;
|
||||
uniform vec4 sunlight_color;
|
||||
uniform vec4 moonlight_color;
|
||||
|
|
|
|||
|
|
@ -24,7 +24,6 @@
|
|||
*/
|
||||
|
||||
uniform int no_atmo;
|
||||
uniform vec4 gamma;
|
||||
|
||||
vec3 scaleSoftClipFrag(vec3 light)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -64,7 +64,6 @@ VARYING vec3 pos;
|
|||
// The fragment shader for the sky
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
|
||||
uniform vec4 gamma;
|
||||
uniform sampler2D rainbow_map;
|
||||
uniform sampler2D halo_map;
|
||||
|
||||
|
|
|
|||
|
|
@ -44,7 +44,6 @@ uniform sampler2D cloud_noise_texture_next;
|
|||
uniform float blend_factor;
|
||||
uniform vec4 cloud_pos_density1;
|
||||
uniform vec4 cloud_pos_density2;
|
||||
uniform vec4 gamma;
|
||||
uniform float cloud_scale;
|
||||
uniform float cloud_variance;
|
||||
|
||||
|
|
|
|||
|
|
@ -22,10 +22,7 @@
|
|||
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
|
||||
* $/LicenseInfo$
|
||||
*/
|
||||
|
||||
|
||||
|
||||
uniform vec4 gamma;
|
||||
uniform float gamma;
|
||||
uniform int no_atmo;
|
||||
|
||||
vec3 getAtmosAttenuation();
|
||||
|
|
@ -39,7 +36,7 @@ vec3 scaleSoftClipFrag(vec3 light)
|
|||
}
|
||||
//soft clip effect:
|
||||
light = 1. - clamp(light, vec3(0.), vec3(1.));
|
||||
light = 1. - pow(light, gamma.xxx);
|
||||
light = 1. - pow(light, vec3(gamma)); // s/b inverted already CPU-side
|
||||
return light;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -35,8 +35,6 @@ out vec4 frag_color;
|
|||
|
||||
VARYING vec4 vary_HazeColor;
|
||||
|
||||
uniform vec4 gamma;
|
||||
|
||||
/// Soft clips the light with a gamma correction
|
||||
vec3 scaleSoftClip(vec3 light);
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,6 @@ uniform sampler2D transmittance_texture;
|
|||
uniform sampler3D scattering_texture;
|
||||
uniform sampler3D single_mie_scattering_texture;
|
||||
uniform sampler2D irradiance_texture;
|
||||
uniform vec4 gamma;
|
||||
|
||||
vec3 GetSkyLuminance(vec3 camPos, vec3 view_dir, float shadow_length, vec3 dir, out vec3 transmittance);
|
||||
|
||||
|
|
|
|||
|
|
@ -44,7 +44,6 @@ uniform sampler3D single_mie_scattering_texture;
|
|||
uniform sampler2D irradiance_texture;
|
||||
uniform sampler2D rainbow_map;
|
||||
uniform sampler2D halo_map;
|
||||
uniform vec4 gamma;
|
||||
|
||||
uniform float moisture_level;
|
||||
uniform float droplet_radius;
|
||||
|
|
|
|||
|
|
@ -50,7 +50,6 @@ uniform vec3 camPosLocal;
|
|||
uniform float cloud_shadow;
|
||||
uniform float max_y;
|
||||
uniform vec4 glow;
|
||||
uniform float global_gamma;
|
||||
uniform mat3 env_mat;
|
||||
uniform vec4 shadow_clip;
|
||||
|
||||
|
|
@ -94,7 +93,6 @@ void main()
|
|||
norm.xyz = getNorm(tc);
|
||||
|
||||
float da = max(dot(norm.xyz, sun_dir.xyz), 0.0);
|
||||
da = pow(da, global_gamma + 0.3);
|
||||
|
||||
vec4 diffuse = texture2DRect(diffuseRect, tc); // linear
|
||||
|
||||
|
|
@ -106,7 +104,6 @@ void main()
|
|||
vec4 spec = texture2DRect(specularRect, vary_fragcoord.xy);
|
||||
|
||||
vec2 scol_ambocc = texture2DRect(lightMap, vary_fragcoord.xy).rg;
|
||||
// scol_ambocc = pow(scol_ambocc, vec3(global_gamma + 0.3));
|
||||
|
||||
float scol = max(scol_ambocc.r, diffuse.a);
|
||||
|
||||
|
|
|
|||
|
|
@ -1596,16 +1596,6 @@ void LLEnvironment::updateGLVariablesForSettings(LLGLSLShader *shader, const LLS
|
|||
//_WARNS("RIDER") << "----------------------------------------------------------------" << LL_ENDL;
|
||||
|
||||
psetting->applySpecial(shader);
|
||||
|
||||
if (LLPipeline::sRenderDeferred && !LLPipeline::sReflectionRender && !LLPipeline::sUnderWaterRender)
|
||||
{
|
||||
shader->uniform1f(LLShaderMgr::GLOBAL_GAMMA, 2.2);
|
||||
}
|
||||
else
|
||||
{
|
||||
shader->uniform1f(LLShaderMgr::GLOBAL_GAMMA, 1.0);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void LLEnvironment::updateShaderUniforms(LLGLSLShader *shader)
|
||||
|
|
|
|||
|
|
@ -706,11 +706,15 @@ void LLSettingsVOSky::applySpecial(void *ptarget)
|
|||
shader->uniform4fv(LLShaderMgr::CLOUD_COLOR, 1, cloud_color.mV);
|
||||
}
|
||||
|
||||
F32 g = getGamma();
|
||||
|
||||
|
||||
shader->uniform1f(LLShaderMgr::SCENE_LIGHT_STRENGTH, mSceneLightStrength);
|
||||
shader->uniform4f(LLShaderMgr::GAMMA, g, 0.0, 0.0, 1.0);
|
||||
shader->uniform1f(LLShaderMgr::DISPLAY_GAMMA, g);
|
||||
|
||||
F32 g = getGamma();
|
||||
F32 display_gamma = gSavedSettings.getF32("RenderDeferredDisplayGamma");
|
||||
|
||||
shader->uniform1f(LLShaderMgr::GAMMA, g);
|
||||
shader->uniform1f(LLShaderMgr::DISPLAY_GAMMA, display_gamma);
|
||||
}
|
||||
|
||||
LLSettingsSky::parammapping_t LLSettingsVOSky::getParameterMap() const
|
||||
|
|
|
|||
|
|
@ -7913,13 +7913,6 @@ void LLPipeline::renderBloom(bool for_snapshot, F32 zoom_factor, int subfield)
|
|||
mScreen.bindTexture(0, channel);
|
||||
}
|
||||
|
||||
if (!LLViewerCamera::getInstance()->cameraUnderWater())
|
||||
{
|
||||
shader->uniform1f(LLShaderMgr::GLOBAL_GAMMA, 2.2);
|
||||
} else {
|
||||
shader->uniform1f(LLShaderMgr::GLOBAL_GAMMA, 1.0);
|
||||
}
|
||||
|
||||
shader->uniform1f(LLShaderMgr::DOF_MAX_COF, CameraMaxCoF);
|
||||
shader->uniform1f(LLShaderMgr::DOF_RES_SCALE, CameraDoFResScale);
|
||||
shader->uniform1f(LLShaderMgr::DOF_WIDTH, dof_width-1);
|
||||
|
|
@ -7961,13 +7954,6 @@ void LLPipeline::renderBloom(bool for_snapshot, F32 zoom_factor, int subfield)
|
|||
mScreen.bindTexture(0, channel);
|
||||
}
|
||||
|
||||
if (!LLViewerCamera::getInstance()->cameraUnderWater())
|
||||
{
|
||||
shader->uniform1f(LLShaderMgr::GLOBAL_GAMMA, 2.2);
|
||||
} else {
|
||||
shader->uniform1f(LLShaderMgr::GLOBAL_GAMMA, 1.0);
|
||||
}
|
||||
|
||||
gGL.begin(LLRender::TRIANGLE_STRIP);
|
||||
gGL.texCoord2f(tc1.mV[0], tc1.mV[1]);
|
||||
gGL.vertex2f(-1,-1);
|
||||
|
|
|
|||
Loading…
Reference in New Issue