Проверка на похожие контроллеры в JInput
Я пытаюсь иметь несколько геймпадов одновременно в JInput, а также проверяю наличие недавно подключенного геймпада. Вот код, используемый для проверки новых контроллеров.
new DirectAndRawInputEnvironmentPlugin().getControllers();
Если я запускаю этот код несколько раз и сохраняю результаты, одна и та же периферия появляется в другом экземпляре "Controller" среди результатов. Что приводит к большому количеству проблем.
Как проверить, похожи ли два экземпляра контроллера? IE если они контролируют одну и ту же периферию?
Я думаю, это могло бы сработать, если бы я проверил название / количество компонентов / грохотов и т. Д., Чтобы узнать, схожи ли они (например, хэширование устройства). Но что, если я дважды подключу один и тот же геймпад?
Спасибо!
1 ответ
В настоящее время вы не можете сделать это с JInput. В идеале вы также должны использовать DefaultEnvironmentPlugin, который будет автоматически определять платформу, на которой вы работаете.
В JInput есть интерфейс для подключения / отключения контроллера, но он никогда не был реализован. Я несколько раз просил добровольцев, но никто, кажется, не беспокоился об этом достаточно, чтобы сделать это. Не стесняйтесь обращаться к нам на форуме javagaming.org, если вы хотите реализовать интерфейс уведомлений.