Rumble Implementation #34

Merged
stossy11 merged 5 commits from MediaMoots/MeloNX:rumbleDev into XC-ios-ht 2025-05-31 04:14:43 +00:00
Contributor

This PR introduces rumble support using CoreHaptics.

Tested working with Switch Pro Controller

Key Changes

  • RumbleController.swift (New File):
    • Manages CHHapticEngine and haptic players for low and high frequency rumble.
    • Implements continuous haptic events with timed restarts to maintain feedback.
  • NativeController.swift:
    • Initializes the CHHapticEngine and the new RumbleController.
    • Relays rumble data from SDL to the RumbleController.
  • VirtualController.swift:
    • Integrates with RumbleController to enable haptic feedback for virtual touch controls.
  • Ryujinx.Headless.SDL2/Program.cs:
    • Enables rumble by default.

Limitations

Untested on iPhones, and will need help testing as I don't have a powerful enough device to test on that also has haptics.

This PR introduces rumble support using CoreHaptics. Tested working with Switch Pro Controller ### **Key Changes** * **`RumbleController.swift` (New File):** * Manages `CHHapticEngine` and haptic players for low and high frequency rumble. * Implements continuous haptic events with timed restarts to maintain feedback. * **`NativeController.swift`:** * Initializes the `CHHapticEngine` and the new `RumbleController`. * Relays rumble data from SDL to the `RumbleController`. * **`VirtualController.swift`:** * Integrates with `RumbleController` to enable haptic feedback for virtual touch controls. * **`Ryujinx.Headless.SDL2/Program.cs`:** * Enables rumble by default. ### **Limitations** Untested on iPhones, and will need help testing as I don't have a powerful enough device to test on that also has haptics.
MediaMoots added 1 commit 2025-05-24 08:02:58 +00:00
MediaMoots added 1 commit 2025-05-31 02:54:28 +00:00
MediaMoots changed title from WIP: Rumble Implementation to Rumble Implementation 2025-05-31 02:56:05 +00:00
MediaMoots added 1 commit 2025-05-31 03:01:31 +00:00
MediaMoots added 1 commit 2025-05-31 03:03:46 +00:00
MediaMoots added 1 commit 2025-05-31 03:20:44 +00:00
MediaMoots changed title from Rumble Implementation to WIP: Rumble Implementation 2025-05-31 03:35:50 +00:00
stossy11 changed title from WIP: Rumble Implementation to Rumble Implementation 2025-05-31 04:14:21 +00:00
stossy11 merged commit 056bcb6736 into XC-ios-ht 2025-05-31 04:14:43 +00:00
Sign in to join this conversation.
No description provided.