Open oseph opened 3 years ago
Duplicate of https://github.com/godotengine/godot/issues/43653.
Doesn't seem to be a duplicate, the OP claims that using a PS4 Dualshock everything works. It is using a Switch Pro Controller that Godot doesn't recognize the controller. There's no reference to the Switch Pro Controller in the other issue.
This is still relevant in macOS Monterey (12.1), MacBook Pro 14" M1 Max, Godot 3.4 stable.
I am also experiencing this issue on:
My Nintendo Switch Pro Controller is recognized in:
I am also unable to receive any input from my Nintendo Switch Pro Controller in the latest dev build (4.0-dev.20211210) with same machine config as my previous post.
I am using the following simple script:
extends Node2D
@onready var label = $Label
var joy_num = 0
var joy_name
var previous_output = ""
func _ready():
joy_name = Input.get_joy_name(joy_num)
label.set_text("joy_name: %s" % joy_name)
set_physics_process(true)
func _process(_delta):
var output = "joy_name: %s\n" % joy_name
for axis in range(JOY_AXIS_SDL_MAX):
output += "axis: %s, value: %f\n" % [ axis, Input.get_joy_axis(joy_num, axis) ]
var vector = Input.get_vector("move_left", "move_right", "move_forward", "move_back")
output += "vector: (%f, %f)" % [vector[0], vector[1]]
label.set_text(output)
if output != previous_output:
previous_output = output
print(output)
And only see the following output in console (no matter how much I move the joysticks):
joy_name: Nintendo Switch Pro Controller
axis: 0, value: -0.022934
axis: 1, value: 0.028794
axis: 2, value: -0.048325
axis: 3, value: 0.068345
axis: 4, value: 0.000000
axis: 5, value: 0.000000
vector: (0.000000, 0.000000)
joy_name: Nintendo Switch Pro Controller
axis: 0, value: 0.000000
axis: 1, value: 0.000000
axis: 2, value: 0.000000
axis: 3, value: 0.000000
axis: 4, value: 0.000000
axis: 5, value: 0.000000
vector: (0.000000, 0.000000)
Same issue on M1 Mac Mini, Big Sur, Godot 3.4.2. Input.get_connected_joypads().size()
returns 1 but the input does not work.
Same issue on Intel Mac OS Monterey (12.1), Godot 3.5.beta1.
Same issue here with a 2021 M1 Max 14-inch MBP, macOS 12.0.1, and Godot 3.4.2 (45eaa2daf).
Not sure if it's related, but thought I would add it with more context: my 8bitdo SN30 Pro+ doesn't work either. Xbox and PS5 controllers are working great.
Edit, Oct 13th, 2023: still broken on Godot 4.0.2, on the same MBP, but with macOS 14.0 this time.
Just noticed that the pro controller is now functional for me via bluetooth in 3.4.3 stable on macOS Monterey (though vibration still does not work).
EDIT: it only works sometimes.
Same here.
Tested on https://gamepad-tester.com and it works but not on Godot 3.4.4-stable.
I'm using macOS Big Sur (11.6.2)
Edit: I also tested the joypad demo from Godot and it doesn't work either Edit 2: Ok, If I have the Steam app open, it works.
The issue may be related to macOS 12 (and down) not properly supporting the Pro Controller natively. I heard macOS 13 Ventura should fix that, but I don't have the developer beta to test it.
Godot 4 alpha 13 seems to work. I have Monterey, and am not running Steam.
edit: NVM, no longer working
If you have steam open, it works better, but only detects one controller
If you have steam open, it works better, but only detects one controller
Steam Input is likely doing its magic here. I didn't know it worked even if a game is not launched via Steam though.
Even when identified by the Steam Beta joy-cons are unable to work. No clue why
All of this is very spotty. Sometimes it works, sometimes it does not. Makes no sense and I can't find any pattern. Also when they do work, the joy-con axises are binary, and can only have in 3 states (-1, 0, 1).
BetterJoy is not for mac, from what I can see.
This issue persists on MacOS 13 (Ventura) although other mac apps (example) and Chrome's joypad API can detect it fine.
When using Input.get_joy_axis(0, JOY_AXIS_LEFT_X)
it returns 0.06495761871338
I have been, and still am, experiencing this issue as well. https://gamepad-tester.com/ detects the controller correctly, but Godot does not.
Godot 4.0.2stable macOS Ventura 13.3.1
This is a problem with MacOS's controller support. It also sometimes occurs for Steam and other applications.
On Wed, Jun 21, 2023 at 5:53 AM Samuel Fine @.***> wrote:
I have been, and still am, experiencing this issue as well. https://gamepad-tester.com/ detects the controller correctly, but Godot does not.
Godot 4.0.2stable macOS Ventura 13.3.1
— Reply to this email directly, view it on GitHub https://github.com/godotengine/godot/issues/44840#issuecomment-1600781208, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHYQTSLNHYGOAGURSF3VAPLXMLVFHANCNFSM4VPSICQA . You are receiving this because you commented.Message ID: @.***>
Still nothing new on this? I'm have the exact same issues as everyone else here.
Also getting problems, and I'm on Godot 4.2.1 stable :(
Same issue:
Godot 4.2.1 Switch Pro Controller Bluetooth MacOS Sonoma 14.6.1
This now WORKS IN GODOT 4.3!!!
I had to do some remapping, but well worth it!!! 😁
Bugsquad note: This issue has been confirmed several times already. No need to confirm it further.
Godot version: 3.2.3 OS: macOS 11.1, Big Sur, Device: Nintendo Switch Pro Controller
Issue description: Nintendo Switch Pro Controller is not properly recognized in Godot (both wired and wireless). The controller is recognized by macOS and when tested on www.gamepad-tester.com in Safari it successfully returns input.
I tried testing the controller in the Godot JoyPads demo and still no input is properly recognized, just like in my project. All I see are very small (static) values for the left joystick, like (0.00112..., 0.0014...), and these do not change/respond to input.
FWIW, I tried testing out all of the above with a PS4 Dual Shock and everything worked fine.
p.s. I love Godot!