From 6a9e0c52c3b36a47d0f8bbe1ed58835774c40b1e Mon Sep 17 00:00:00 2001 From: shockdude Date: Sat, 15 Apr 2023 02:13:31 -0700 Subject: [PATCH] Round squircled axis values to nearest whole number --- rpcs3/Emu/Io/PadHandler.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rpcs3/Emu/Io/PadHandler.cpp b/rpcs3/Emu/Io/PadHandler.cpp index 2d623b626c..fc5ce667e6 100644 --- a/rpcs3/Emu/Io/PadHandler.cpp +++ b/rpcs3/Emu/Io/PadHandler.cpp @@ -255,8 +255,8 @@ std::tuple PadHandlerBase::ConvertToSquirclePoint(u16 inX, u16 inY, in const f32 newLen = (1 + std::pow(std::sin(2 * angle), 2.f) / (squircle_factor / 1000.f)) * r; // we now have len and angle, convert to cartesian - const int newX = Clamp0To255(((newLen * std::cos(angle)) + 1) * 127.5f); - const int newY = Clamp0To255(((newLen * std::sin(angle)) + 1) * 127.5f); + const int newX = Clamp0To255(std::round(((newLen * std::cos(angle)) + 1) * 127.5f)); + const int newY = Clamp0To255(std::round(((newLen * std::sin(angle)) + 1) * 127.5f)); return std::tuple(newX, newY); }