praydog / UEVR

Universal Unreal Engine VR Mod (4.8 - 5.4)
http://uevr.io
3.08k stars 158 forks source link

[Feature Request] Support adjusting controls for games using SDL2 to handle controller input. #94

Open supersmo opened 9 months ago

supersmo commented 9 months ago

I found a game that uses SDL2.dll for controller input and UEVR can't override the input.

Symptoms:

Game tested: Laser League World Arena The game is no longer available for purchase and the servers are down but I'm still able to play the game offline with an old depot download from Steam. The game is a top down but it would be absolutely amazing to play in first person. HMD relative movement is the only thing needed to get it working in first person.

praydog commented 9 months ago

For now this may be a good thing for a plugin to support as they have full access to controller bindings but I'll leave this issue open

supersmo commented 9 months ago

I've dug some more. I checked the logs and UEVR successfully hooks XInput according to: [UnrealVR] [info] [XInputHook] Done (1_4), so I'm not sure why UEVR can't intercept the XBox gamepad input or pass motion control input to the game.

The game has settings to use XInput or DirectInput and it is set to XInput. SteamInput is disabled in Steam.

I just saw the SDL2 dll among the game files so I assumed that it was the culprit but SDL2 should be using the XInput dll so I think the input interception should work.

Any ideas why it doesn't work?