SagaPDev / Godot-SDL-Gyro

Add Gamepad Gyro Funtionality to Godot
MIT License
21 stars 2 forks source link

Enabling Gyro seems to disable other gamepad inputs #11

Open EliteMasterEric opened 1 month ago

EliteMasterEric commented 1 month ago

On windows, in my project, it seems inconsistent, but either Gyro will work or Godot button/axis inputs will work, not both together

SagaPDev commented 1 month ago

curious, what controller are you using?

EliteMasterEric commented 1 month ago

Playstation 4 Dual Shock

ThePhantomMask commented 1 month ago

It happens to me too, having the PS4 controller

SagaPDev commented 1 month ago

I've been meaning to debug this with a friend's dualshock 4, gyro is managed by SDL and buttons should be handled independently by Godot own input system this happens both over bluetooth and wired right?

ThePhantomMask commented 1 month ago

Yes, but Godot's Input System is also based on SDL2/3

SagaPDev commented 1 month ago

For what that understand Godot only uses the SDL mapping database, input itself is handled separately (dinput or xinput not sure) there is no actual SDL code in Godot. https://x.com/reduzio/status/1770037294486958413

ThePhantomMask commented 1 month ago

Yes, use that

ThePhantomMask commented 1 month ago

What causes the problem?

SagaPDev commented 1 month ago

My theory, is that when the dualshock 4 is accessed from SDL and another input system at the same time it causes some kind of conflict ( haven't been able to get a hold on a ps4 controller to test)

ThePhantomMask commented 1 month ago

Which is strange because they used to work together, if there is a bug in Godot's input system that conflicts?

SagaPDev commented 1 month ago

Which is strange because they used to work together, if there is a bug in Godot's input system that conflicts?

so this issue is recent? the plugin used to fine for you at some point?

ThePhantomMask commented 1 month ago

Yes

SagaPDev commented 1 month ago

Yes

Sorry for having more question that answers, but do you have any clue of what could have changed? this project hasn't have mayor updates since i posted it, did you update your Godot, does it work again in previous versions? (minimum for this plugin should be 4.1) any info on this could help me pinpoint the issue

ThePhantomMask commented 1 month ago

Well...I used Godot 4.2 (it worked before)

ThePhantomMask commented 1 month ago

Maybe add C++ bindings for the Godot script API for Godot 4.2