JoyCon не имеет специальной поддержки в SDL 2.0.9. Из коробки JoyCon просто рассматривается как джойстик, и нет API для отправки ему специальных команд настройки, но инфраструктура для поддержки JoyCon появляется в исходном коде; SDL имеет специальную поддержку контроллера Switch Pro.
Файлы, в которых упоминается JoyCon, являются частью Game Controller API. Этот API предназначен для поддержки контроллеров, похожих на XBOX 360. У одного JoyCon недостаточно входных данных, чтобы вписаться в эту категорию, поэтому, вероятно, он доступен только по умолчанию в Joystick, а не в GameController API.
SDL's controllertype.h говорит:
// We currently don't support using a pair of Switch Joy-Con's as a single
// controller and we don't want to support using them individually for the
// time being, so these should be disabled until one of the above is true
// { MAKE_CONTROLLER_ID( 0x057e, 0x2006 ), k_eControllerType_SwitchJoyConLeft }, // Nintendo Switch Joy-Con (Left)
// { MAKE_CONTROLLER_ID( 0x057e, 0x2007 ), k_eControllerType_SwitchJoyConRight }, // Nintendo Switch Joy-Con (Right)
Однако имеется поддержка контроллера Switch Pro в https://github.com/spurious/SDL-mirror/blob/master/src/joystick/hidapi/SDL_hidapi_switch.c; кажется, что он может поддерживать все функции контроллера коммутатора с использованием HID, даже если они не все подвержены SDL. Вероятно, это может дать команду JoyCon, не комментируя несколько строк.
Также возможно добавить сопоставление контроллера для использования одного джойкона в качестве игрового контроллера SDL, который может сделать аналоговый джойстик «шляпкой» похожим на цифровой джойстик.
(Предположительно, порт NDA SDL2, который работает на коммутаторе Nintendo, имеет отличную поддержку JoyCons)