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/llinventory | |
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/llinventory')
-rw-r--r-- | indra/llinventory/llsettingssky.cpp | 39 | ||||
-rw-r--r-- | indra/llinventory/llsettingssky.h | 9 |
2 files changed, 47 insertions, 1 deletions
diff --git a/indra/llinventory/llsettingssky.cpp b/indra/llinventory/llsettingssky.cpp index ce6244d038..f773b64bde 100644 --- a/indra/llinventory/llsettingssky.cpp +++ b/indra/llinventory/llsettingssky.cpp @@ -601,7 +601,7 @@ void LLSettingsSky::blend(LLSettingsBase::ptr_t &end, F64 blendf) mSettingFlags |= other->mSettingFlags; - mCanAutoAdjust = false; // no point? + mCanAutoAdjust = other->mCanAutoAdjust; mSunRotation = slerp((F32)blendf, mSunRotation, other->mSunRotation); mMoonRotation = slerp((F32)blendf, mMoonRotation, other->mMoonRotation); @@ -1177,6 +1177,11 @@ void LLSettingsSky::loadValuesFromLLSD() mReflectionProbeAmbiance = (F32)settings[SETTING_REFLECTION_PROBE_AMBIANCE].asReal(); } + mHDRMax = 2.0f; + mHDRMin = 0.5f; + mHDROffset = 1.0f; + mTonemapMix = 1.0f; + mSunTextureId = settings[SETTING_SUN_TEXTUREID].asUUID(); mMoonTextureId = settings[SETTING_MOON_TEXTUREID].asUUID(); mCloudTextureId = settings[SETTING_CLOUD_TEXTUREID].asUUID(); @@ -2027,6 +2032,38 @@ F32 LLSettingsSky::getGamma() const return mGamma; } +F32 LLSettingsSky::getHDRMin() const +{ + if (mCanAutoAdjust) + return 0.f; + + return mHDRMin; +} + +F32 LLSettingsSky::getHDRMax() const +{ + if (mCanAutoAdjust) + return 0.f; + + return mHDRMax; +} + +F32 LLSettingsSky::getHDROffset() const +{ + if (mCanAutoAdjust) + return 1.0f; + + return mHDROffset; +} + +F32 LLSettingsSky::getTonemapMix() const +{ + if (mCanAutoAdjust) + return 0.0f; + + return mTonemapMix; +} + void LLSettingsSky::setGamma(F32 val) { mGamma = val; diff --git a/indra/llinventory/llsettingssky.h b/indra/llinventory/llsettingssky.h index 38c0368423..8d73c35ff3 100644 --- a/indra/llinventory/llsettingssky.h +++ b/indra/llinventory/llsettingssky.h @@ -209,6 +209,11 @@ public: F32 getGamma() const; + F32 getHDRMin() const; + F32 getHDRMax() const; + F32 getHDROffset() const; + F32 getTonemapMix() const; + void setGamma(F32 val); LLColor3 getGlow() const; @@ -380,6 +385,10 @@ protected: F32 mCloudVariance; F32 mCloudShadow; F32 mCloudScale; + F32 mTonemapMix; + F32 mHDROffset; + F32 mHDRMax; + F32 mHDRMin; LLVector2 mScrollRate; LLColor3 mCloudPosDensity1; LLColor3 mCloudPosDensity2; |