Remove non-SDL2 platform code and add controller rumble support #318
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is still a work in progress. I might also remove the directional force feedback support from the game since there really isn't any hardware that supports that anymore. This still uses the normal Joystick API from SDL, not the Game Controller API. I would wait to implement that for BZFlag 2.6, along with enhancements to the input settings and controller mapping.
I've been testing this on Windows 10, Debian 11, and macOS 11.6.5 with a Playstation Dual Shock 4, 8BitDo SN30 pro wired, 8BitDo SN30 pro bluetooth, and 8BitDo SN30 pro+. The SN30 pro wired doesn't work on macOS. With the 8BitDo bluetooth devices, they work best in either XInput mode or mac mode, with the DInput mode usually (or always?) not working with rumble. Rumble also worked fine on the PS4 (with all three platforms) and 8BitDo SN30 pro wired (on Windows and Linux).