From d47120aeb3bf344be3f414a1a3505bd772eebf54 Mon Sep 17 00:00:00 2001 From: Perttu Ahola Date: Tue, 18 Oct 2011 23:55:55 +0300 Subject: [PATCH] Add enable_2d_clouds setting for usage on lower-end machines --- src/clouds.cpp | 9 +++++++-- src/defaultsettings.cpp | 1 + 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/clouds.cpp b/src/clouds.cpp index 8981b42..063a4b1 100644 --- a/src/clouds.cpp +++ b/src/clouds.cpp @@ -21,8 +21,9 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "noise.h" #include "constants.h" #include "debug.h" +#include "main.h" // For g_profiler and g_settings #include "profiler.h" -#include "main.h" // For g_profiler +#include "settings.h" Clouds::Clouds( scene::ISceneNode* parent, @@ -80,6 +81,10 @@ void Clouds::render() ScopeProfiler sp(g_profiler, "Rendering of clouds, avg", SPT_AVG); + int num_faces_to_draw = 6; + if(g_settings->getBool("enable_2d_clouds")) + num_faces_to_draw = 1; + driver->setTransform(video::ETS_WORLD, AbsoluteTransformation); driver->setMaterial(m_material); @@ -148,7 +153,7 @@ void Clouds::render() f32 ry = 8*BS; f32 rz = cloud_size; - for(int i=0;i<6;i++) + for(int i=0; isetDefault("invisible_stone", "false"); settings->setDefault("screenshot_path", "."); settings->setDefault("view_bobbing_amount", "1.0"); + settings->setDefault("enable_2d_clouds", "false"); // Server stuff // "map-dir" doesn't exist by default.