Cap underwater view distance (bug #4565)

fix/skillcap
Andrei Kortunov 6 years ago
parent a19d55e035
commit b7859b3fa9

@ -81,6 +81,7 @@
Bug #4553: Forcegreeting on non-actor opens a dialogue window which cannot be closed Bug #4553: Forcegreeting on non-actor opens a dialogue window which cannot be closed
Bug #4557: Topics with reserved names are handled differently from vanilla Bug #4557: Topics with reserved names are handled differently from vanilla
Bug #4558: Mesh optimizer: check for reserved node name is case-sensitive Bug #4558: Mesh optimizer: check for reserved node name is case-sensitive
Bug #4565: Underwater view distance should be limited
Feature #2606: Editor: Implemented (optional) case sensitive global search Feature #2606: Editor: Implemented (optional) case sensitive global search
Feature #3083: Play animation when NPC is casting spell via script Feature #3083: Play animation when NPC is casting spell via script
Feature #3103: Provide option for disposition to get increased by successful trade Feature #3103: Provide option for disposition to get increased by successful trade

@ -554,8 +554,8 @@ namespace MWRender
mLandFogStart = mViewDistance * (1 - fogDepth); mLandFogStart = mViewDistance * (1 - fogDepth);
mLandFogEnd = mViewDistance; mLandFogEnd = mViewDistance;
} }
mUnderwaterFogStart = mViewDistance * (1 - underwaterFog); mUnderwaterFogStart = std::min(mViewDistance, 6666.f) * (1 - underwaterFog);
mUnderwaterFogEnd = mViewDistance; mUnderwaterFogEnd = std::min(mViewDistance, 6666.f);
} }
mFogColor = color; mFogColor = color;
} }
@ -585,8 +585,6 @@ namespace MWRender
mCurrentCameraPos = cameraPos; mCurrentCameraPos = cameraPos;
if (mWater->isUnderwater(cameraPos)) if (mWater->isUnderwater(cameraPos))
{ {
float viewDistance = mViewDistance;
viewDistance = std::min(viewDistance, 6666.f);
setFogColor(mUnderwaterColor * mUnderwaterWeight + mFogColor * (1.f-mUnderwaterWeight)); setFogColor(mUnderwaterColor * mUnderwaterWeight + mFogColor * (1.f-mUnderwaterWeight));
mStateUpdater->setFogStart(mUnderwaterFogStart); mStateUpdater->setFogStart(mUnderwaterFogStart);
mStateUpdater->setFogEnd(mUnderwaterFogEnd); mStateUpdater->setFogEnd(mUnderwaterFogEnd);

Loading…
Cancel
Save