In-cloud fog: Strengthen effect when small view range is used

Ensure in-cloud fog is always stronger than outside-of-cloud-fog even when
using a small view range.
Also limit in-cloud fog range to a maximum of 32 nodes to keep it fairly
strong when using a large view range.
This commit is contained in:
Lars Hofhansl 2017-07-10 06:43:06 -07:00 committed by paramat
parent 5f37efbec4
commit 5045bdc6d8

@ -20,6 +20,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "game.h" #include "game.h"
#include <iomanip> #include <iomanip>
#include <cmath>
#include "client/renderingengine.h" #include "client/renderingengine.h"
#include "camera.h" #include "camera.h"
#include "client.h" #include "client.h"
@ -4124,7 +4125,7 @@ void Game::updateFrame(ProfilerGraph *graph, RunStats *stats, f32 dtime,
.getInterpolated(video::SColor(255, 0, 0, 0), 0.9); .getInterpolated(video::SColor(255, 0, 0, 0), 0.9);
sky->overrideColors(clouds_dark, clouds->getColor()); sky->overrideColors(clouds_dark, clouds->getColor());
sky->setBodiesVisible(false); sky->setBodiesVisible(false);
runData.fog_range = 20.0f * BS; runData.fog_range = std::fmin(runData.fog_range * 0.5f, 32.0f * BS);
// do not draw clouds after all // do not draw clouds after all
clouds->setVisible(false); clouds->setVisible(false);
} }