-
-
Notifications
You must be signed in to change notification settings - Fork 21.1k
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
My gamepad d-pad is executing is_action_just_pressed twice #45443
Comments
You should always use |
My intention is to use But I tried using My intention with this messy code is to show more techniques to move the player, and none works on the d-pad |
|
I thought that |
Related to #21550 (but not identical judging by the description). |
I have the same problem. Steps to reproduce:
Pressing and releasing D-pad in any direction shows:
while any other button works as expected:
|
Same problem on godot 3.4 for windows10. It sends every Input Twice.
Printing cardinal count on frame, pressing one time outputs:
Easy to fix in code with is_echo() method. (for those looking for solutions) |
Same problem here, also on Windows 10. My case is a Switch Pro controller connected via Steam Input |
I'm experiencing this bug for all button inputs using an Xbox controller on Windows 10. |
Still present in Godot 3.6 beta 3, using an xbox 360 controller under Fedora 38 Edit: I also tested this on Steam Deck for good measure, and the bug doesn't seem to happen on there weirdly enough, so perhaps it is an xbox controller specific issue. Edit: With the same xbox controller connected to my Steam Deck, testing in desktop mode, the bug does occur, so this may or may not confirm its an issue specific to xbox controllers. |
The PR has a |
Can anyone affected by this issue test 3.6 beta4 to see if the issue is resolved there? |
Tested with an xbox 360 controller and still present in 3.6 beta4. |
I tried and it still has the issue, I even tried Godot 4 and it has too. Maybe its a driver bug? I've no idea who I need to report. |
If you can reproduce this in other games and applications that don't use Godot, it's a driver bug. Otherwise, it's a Godot bug. |
I never noticed double clicks in any game, and no idea how to "proof" it, so I take a look on Defold engine (I have no idea how it works) and tried to reproduce this issue, but looks like it works correctly, just printing once (not sure if it's a valid comparison).
|
Possibly related to #66878. If it is convenient, you can use |
Godot version:
3.2.3.stable
OS/device including version:
OpenSUSE Tumbleweed 20210120 kernel Linux 5.10.7-1
Issue description:
When I use the gamepad to control the sprite, it executes the function two times, on the keyboard and mouse button works well.
I found a similar issue here: #43492 but it's related to mouse, and my mouse is working, so maybe it's a different bug. I even set Input.set_use_accumulated_input(false) as one comment suggests, it don't work.
I created a video showing what happens:
https://www.youtube.com/watch?v=WuNF8gArbb8
Notice that the output prints the message twice when I use the gamepad
After that I discovered one more thing, it only happens on the D-Pad, I set to the analog and works correctly, and I set to the face buttons: up to Y, down to A, left to X and right to B and works well, so maybe it's a really specific bug to how it works with the D-Pad
Steps to reproduce:
1 - Open and run the project
2 - Start moving the player with the d-pad of gamepad
Minimal reproduction project:
TesteInput2.zip
It's a simple code if don't want to import the project, just put a sprite on the scene:
The text was updated successfully, but these errors were encountered: