From dcb161bcae032d0a44ed19d176e7d41f53980769 Mon Sep 17 00:00:00 2001 From: saschawillems Date: Sat, 26 Mar 2016 00:07:12 +0100 Subject: [PATCH] Fixed android gamepad axis input (#97) --- base/vulkanexamplebase.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/base/vulkanexamplebase.cpp b/base/vulkanexamplebase.cpp index faffc86d..035e1a66 100644 --- a/base/vulkanexamplebase.cpp +++ b/base/vulkanexamplebase.cpp @@ -397,25 +397,25 @@ void VulkanExampleBase::renderLoop() } } // Check gamepad state - const float deadZone = 0.10f; + const float deadZone = 0.0015f; // todo : check if gamepad is present // todo : time based and relative axis positions bool updateView = false; // Rotate - if (abs(gamePadState.axes.x) > deadZone) + if (std::abs(gamePadState.axes.x - deadZone) > 0.0f) { - rotation.y += gamePadState.axes.x * 0.25f * rotationSpeed; + rotation.y += gamePadState.axes.x * 0.5f * rotationSpeed; updateView = true; } - if (abs(gamePadState.axes.y) > deadZone) + if (std::abs(gamePadState.axes.y - deadZone) > 0.0f) { - rotation.x -= gamePadState.axes.y * 0.25f * rotationSpeed; + rotation.x -= gamePadState.axes.y * 0.5f * rotationSpeed; updateView = true; } // Zoom - if (abs(gamePadState.axes.rz) > deadZone) + if (std::abs(gamePadState.axes.rz - deadZone) > 0.0f) { - zoom -= gamePadState.axes.rz * 0.005f * zoomSpeed; + zoom -= gamePadState.axes.rz * 0.01f * zoomSpeed; updateView = true; } if (updateView)