From 70f79e689bc947313aab11c41e59928ce43be517 Mon Sep 17 00:00:00 2001 From: mpnico Date: Thu, 5 Aug 2021 00:39:40 +0200 Subject: Implement vibrations (#2468) * First working vibration implementation * Fix Infinite Rumble in SDL2Mouse * Stop ignoring one vibValues every 2 * Remove RumbleInfinity as suggested * Reworked all the vibration handle / calculation * Revert HidVibrationDevicePosition changes * Add UI to enable and tune rumble * Remove some stub logs * Add PlayerIndex in rumble debug log * Fix all requested changes * Implements hid::GetVibrationDeviceInfo * Better implements HidVibrationValue.Equals/GetHashCode * Added requested changes from code review * Last fixes from review * Update configuration file version for rebase --- .../Hid/Controller/GenericControllerInputConfig.cs | 5 +++++ .../Hid/Controller/RumbleConfigController.cs | 20 ++++++++++++++++++++ 2 files changed, 25 insertions(+) create mode 100644 Ryujinx.Common/Configuration/Hid/Controller/RumbleConfigController.cs (limited to 'Ryujinx.Common/Configuration/Hid/Controller') diff --git a/Ryujinx.Common/Configuration/Hid/Controller/GenericControllerInputConfig.cs b/Ryujinx.Common/Configuration/Hid/Controller/GenericControllerInputConfig.cs index e3423bb5..6c4562cf 100644 --- a/Ryujinx.Common/Configuration/Hid/Controller/GenericControllerInputConfig.cs +++ b/Ryujinx.Common/Configuration/Hid/Controller/GenericControllerInputConfig.cs @@ -33,5 +33,10 @@ namespace Ryujinx.Common.Configuration.Hid.Controller /// Controller Motion Settings /// public MotionConfigController Motion { get; set; } + + /// + /// Controller Rumble Settings + /// + public RumbleConfigController Rumble { get; set; } } } diff --git a/Ryujinx.Common/Configuration/Hid/Controller/RumbleConfigController.cs b/Ryujinx.Common/Configuration/Hid/Controller/RumbleConfigController.cs new file mode 100644 index 00000000..48be4f13 --- /dev/null +++ b/Ryujinx.Common/Configuration/Hid/Controller/RumbleConfigController.cs @@ -0,0 +1,20 @@ +namespace Ryujinx.Common.Configuration.Hid.Controller +{ + public class RumbleConfigController + { + /// + /// Controller Strong Rumble Multiplier + /// + public float StrongRumble { get; set; } + + /// + /// Controller Weak Rumble Multiplier + /// + public float WeakRumble { get; set; } + + /// + /// Enable Rumble + /// + public bool EnableRumble { get; set; } + } +} -- cgit v1.2.3