-
Notifications
You must be signed in to change notification settings - Fork 204
wip: emulate steam_input through sdl3 #242
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
|
Not sure why protoc is failing on github actions but builds fine locally |
The deps cache in Github Actions has now been regenerated, and PR #249 builds successfully. |
|
I hope to achieve the controller effect of RUNE. RUNE can customize the controller type, but some require Steam input, which still doesn't work. For example, although the PS5 controller can be played with, it still simulates XBinput because the touchpad doesn't support it, and linear triggers don't support many games. I have tested that the touchpad of the PS5 controller is invalid, but it can recognize it, but everything works normally with GLR |
|
Is this still being worked on? I was trying to build for Mac but I'd have to port the gamepad library. |
I think it would be great if we could finally handle the selection of controller characters. For the rest, we could convert to SDL, so that we can set up our own controller mode patterns that developers don't have options for in the game |
in terms of emulating the basic steam input api itself, the code should be relatively complete though a little messy but rumble + multiple controller still hasn't been tested because I do not have access to those things/a game with rumble myself right now. What do you mean by porting the gamepad library? sdl3 should be crossplatform though you may need to edit the build script |
|
I was talking about the library that is currently used. I ended up implementing the functions with Apple's Game Controller Framework, and it built, but I haven't verified whether it works. |
|
This PR should remove the need for libgamepad. With SDL iirc there shouldn't be any relevant code that references libgamepad anymore. |
|
Curious about this one, would it fix issues where games aren't detecting the gamepad? I just opened an issue for this for No Man's Sky. If it's complete and we're only waiting to see if rumble works, I could request someone to test for you, or we could put the new implementation behind a flag like |
VeryWIP PR, currently handles most of the major controller types. Tested to work on Elden Ring Nightreign with a stock Dualsense.Implements
Note on XInput Emulation
Real steam emulates Xinput for non-Xinput gamepads on windows. We could attempt to do the same by hooking Xinput same way that Steam does, but it's tricky and would only work well on experimental builds most likely
TODO