diff --git a/src/camera.cpp b/src/camera.cpp
index 5370396a9259c9254d1a20a8a9cfa18cf1ddd390..0b3413591d430eddc724a28bcaea1605d93829cd 100644
--- a/src/camera.cpp
+++ b/src/camera.cpp
@@ -460,7 +460,7 @@ void Camera::update(LocalPlayer* player, f32 frametime, f32 busytime,
 	// start (or continue) the view bobbing animation.
 	v3f speed = player->getSpeed();
 	const bool movement_XZ = hypot(speed.X, speed.Z) > BS;
-	const bool movement_Y = abs(speed.Y) > BS;
+	const bool movement_Y = fabs(speed.Y) > BS;
 
 	const bool walking = movement_XZ && player->touching_ground;
 	const bool swimming = (movement_XZ || player->swimming_vertical) && player->in_liquid;