Controller Support#295
Open
AL2009man wants to merge 184 commits into
Open
Conversation
proof of concept gyro camera
… alpine settings config
adds Analog Movement function for the Left Joystick
the entire analog system has been revised to be more direct about it Co-Authored-By: nickalreadyinuse <75915391+nickalreadyinuse@users.noreply.github.com>
…ion setup there's now a Smoothing and Tightening slider to the CMD setup, for now: it'll be a Console Command. Additionally: Gyro-Autocalibration has been changes so that Sensor Fusion + Stillness setup doesn't to post-calibration drift.
everything should be a proper gamepad input layer, i think?
Co-Authored-By: nickalreadyinuse <75915391+nickalreadyinuse@users.noreply.github.com>
also prepares for GooberRF#296
3ba1e79 to
5bd11b7
Compare
you'll need to place it on Alpine Faction's install file inorder for the database to load
no need to manually download and swap the files when you can just change version numbers
it should now deal with Gamepad-only events.
this also fixes Gamepad-KB/M override
includes Steam Deck, Steam Controller (2026) and Steam Controller (2015)
4411e50 to
3311ead
Compare
with the exception of Mouse Movement (for Mixed Input support), it now change Input glyphs in HUD dynamically. This can be overridden via either console commands or alpine_settings.ini
this allows both game controllers to be used simultaneously, while enabling future support for Local Multiplayer.
c9df9cd to
f9be30b
Compare
…using Steam Hardware devices added detection support for HORIPAD For Steam, but added a block for the Capsense and Gripsense function from the rebinding process to prevent accidental bindings
After further testing (and able to test on Steam Deck), I've determined that a larger workaround isn't needed, now it's back to pure raw local axis, but with a minor roll reduction to match rotational scale
e6e23b7 to
d4dc066
Compare
to avoid cases where the player might mistake "DirectInput" with "DirectInput controller support", the Input Options' "DirectInput" has been renamed to "DInput Mouse".
Changes default shoulder and trigger buttons to match modern conformity. Players can still optionally match the original PS2 layout if you like
…while in multiplayer
279a07f to
e2381f5
Compare
…ick in Single-Player should match Multiplayer freelook cam.
…t-death Co-Authored-By: Chris Parsons <17713962+GooberRF@users.noreply.github.com>
(they're untested at the moment)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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 PR adds what is essentially an input-related feature that is missing from the original PS2 release while adding a few enhancements. While it's not 1:1 with the PS2 (additional rumble effects, auto-aim), it's close enough.
redfactionwithgamepad2.mp4
this leverages SDL3's Gamepad API inorder to implement Gamepad Inputs, not only it'll support Xbox controllers, it also supports PlayStation controllers, Nintendo Controllers and selected 8BitDo Controllers while being the foundation for advanced feature sets down in the line (such as Lightbar, DualSense's Adaptive Triggers, pressure-sensitive buttons, etc)
Controller features.
GamepadRawInputinalpine_settings.ini)portions of the code and file structure were referenced and inspired by yquake2, Perfect Dark PC Port (currently under draft pr as of this writing) was used as inspiration for glyph management system. Motion sensor's overall functionality is powered by GamepadMotionHelper header.
–––