diff options
| author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2025-01-02 17:31:23 +0200 | 
|---|---|---|
| committer | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2025-01-02 20:55:17 +0200 | 
| commit | a27515748fd1fd14a12ffc7f12b415decf6099de (patch) | |
| tree | c841cdd4d3aa40b3520ebb37e0d94fbf792f4530 /indra/newview | |
| parent | c88a7d1d274b090f5ca7484a8b1f3ccc36aa1980 (diff) | |
#3311 RenderSkyAutoAdjustLegacy does not engage tonemapper
Diffstat (limited to 'indra/newview')
| -rw-r--r-- | indra/newview/llsettingsvo.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/pipeline.cpp | 14 | 
2 files changed, 8 insertions, 8 deletions
| diff --git a/indra/newview/llsettingsvo.cpp b/indra/newview/llsettingsvo.cpp index cf96072ae2..6f9d4a24bc 100644 --- a/indra/newview/llsettingsvo.cpp +++ b/indra/newview/llsettingsvo.cpp @@ -807,7 +807,7 @@ void LLSettingsVOSky::applySpecial(void *ptarget, bool force)      static LLCachedControl<F32> tonemap_mix_setting(gSavedSettings, "RenderTonemapMix", 1.f);      // sky is a "classic" sky following pre SL 7.0 shading -    bool classic_mode = psky->canAutoAdjust(); +    bool classic_mode = psky->canAutoAdjust() && !should_auto_adjust();      if (!classic_mode)      { diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index 1ca67dd88a..38f158c1df 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -7076,7 +7076,7 @@ void LLPipeline::generateExposure(LLRenderTarget* src, LLRenderTarget* dst, bool          LLSettingsSky::ptr_t sky = LLEnvironment::instance().getCurrentSky(); -        F32 probe_ambiance = LLEnvironment::instance().getCurrentSky()->getReflectionProbeAmbiance(should_auto_adjust); +        F32 probe_ambiance = LLEnvironment::instance().getCurrentSky()->getReflectionProbeAmbiance(should_auto_adjust());          F32 exp_min = 1.f;          F32 exp_max = 1.f; @@ -7087,13 +7087,13 @@ void LLPipeline::generateExposure(LLRenderTarget* src, LLRenderTarget* dst, bool          {              if (dynamic_exposure_enabled)              { -                exp_min = sky->getHDROffset() - sky->getHDRMin(); -                exp_max = sky->getHDROffset() + sky->getHDRMax(); +                exp_min = sky->getHDROffset(should_auto_adjust()) - sky->getHDRMin(should_auto_adjust()); +                exp_max = sky->getHDROffset(should_auto_adjust()) + sky->getHDRMax(should_auto_adjust());              }              else              { -                exp_min = sky->getHDROffset(); -                exp_max = sky->getHDROffset(); +                exp_min = sky->getHDROffset(should_auto_adjust()); +                exp_max = sky->getHDROffset(should_auto_adjust());              }          }          else if (dynamic_exposure_enabled) @@ -7113,7 +7113,7 @@ void LLPipeline::generateExposure(LLRenderTarget* src, LLRenderTarget* dst, bool          shader->uniform1f(dt, gFrameIntervalSeconds);          shader->uniform2f(noiseVec, ll_frand() * 2.0f - 1.0f, ll_frand() * 2.0f - 1.0f);          shader->uniform4f(dynamic_exposure_params, dynamic_exposure_coefficient, exp_min, exp_max, dynamic_exposure_speed_error); -        shader->uniform4f(dynamic_exposure_params2, sky->getHDROffset(), exp_min, exp_max, dynamic_exposure_speed_target); +        shader->uniform4f(dynamic_exposure_params2, sky->getHDROffset(should_auto_adjust()), exp_min, exp_max, dynamic_exposure_speed_target);          mScreenTriangleVB->setBuffer();          mScreenTriangleVB->drawArrays(LLRender::TRIANGLES, 0, 3); @@ -7171,7 +7171,7 @@ void LLPipeline::tonemap(LLRenderTarget* src, LLRenderTarget* dst)          static LLCachedControl<U32> tonemap_type_setting(gSavedSettings, "RenderTonemapType", 0U);          shader.uniform1i(tonemap_type, tonemap_type_setting); -        shader.uniform1f(tonemap_mix, psky->getTonemapMix()); +        shader.uniform1f(tonemap_mix, psky->getTonemapMix(should_auto_adjust()));          mScreenTriangleVB->setBuffer();          mScreenTriangleVB->drawArrays(LLRender::TRIANGLES, 0, 3); | 
