aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--minetest.conf.example2
-rw-r--r--src/camera.cpp1
-rw-r--r--src/defaultsettings.cpp1
3 files changed, 4 insertions, 0 deletions
diff --git a/minetest.conf.example b/minetest.conf.example
index 130158254..440a26903 100644
--- a/minetest.conf.example
+++ b/minetest.conf.example
@@ -103,6 +103,8 @@ screenH# = 600
#invisible_stone = false
# Path for screenshots
#screenshot_path = .
+# Amount of view bobbing (0 = no view bobbing, 1.0 = normal, 2.0 = double)
+#view_bobbing_amount = 1.0
#
# Server stuff
diff --git a/src/camera.cpp b/src/camera.cpp
index 6fc7c16cd..634a7cc9f 100644
--- a/src/camera.cpp
+++ b/src/camera.cpp
@@ -221,6 +221,7 @@ void Camera::update(LocalPlayer* player, f32 frametime, v2u32 screensize)
//rel_cam_target += 0.03 * bobvec;
//rel_cam_up.rotateXYBy(0.02 * bobdir * bobtmp * PI);
float f = 1.0;
+ f *= g_settings->getFloat("view_bobbing_amount");
rel_cam_pos += bobvec * f;
//rel_cam_target += 0.995 * bobvec * f;
rel_cam_target += bobvec * f;
diff --git a/src/defaultsettings.cpp b/src/defaultsettings.cpp
index 2f4147a99..be787dd6b 100644
--- a/src/defaultsettings.cpp
+++ b/src/defaultsettings.cpp
@@ -74,6 +74,7 @@ void set_default_settings(Settings *settings)
settings->setDefault("enable_clouds", "true");
settings->setDefault("invisible_stone", "false");
settings->setDefault("screenshot_path", ".");
+ settings->setDefault("view_bobbing_amount", "1.0");
// Server stuff
// "map-dir" doesn't exist by default.