Проверка на похожие контроллеры в JInput

Я пытаюсь иметь несколько геймпадов одновременно в JInput, а также проверяю наличие недавно подключенного геймпада. Вот код, используемый для проверки новых контроллеров.

new DirectAndRawInputEnvironmentPlugin().getControllers();

Если я запускаю этот код несколько раз и сохраняю результаты, одна и та же периферия появляется в другом экземпляре "Controller" среди результатов. Что приводит к большому количеству проблем.

Как проверить, похожи ли два экземпляра контроллера? IE если они контролируют одну и ту же периферию?

Я думаю, это могло бы сработать, если бы я проверил название / количество компонентов / грохотов и т. Д., Чтобы узнать, схожи ли они (например, хэширование устройства). Но что, если я дважды подключу один и тот же геймпад?

Спасибо!

1 ответ

Решение

В настоящее время вы не можете сделать это с JInput. В идеале вы также должны использовать DefaultEnvironmentPlugin, который будет автоматически определять платформу, на которой вы работаете.

В JInput есть интерфейс для подключения / отключения контроллера, но он никогда не был реализован. Я несколько раз просил добровольцев, но никто, кажется, не беспокоился об этом достаточно, чтобы сделать это. Не стесняйтесь обращаться к нам на форуме javagaming.org, если вы хотите реализовать интерфейс уведомлений.

Другие вопросы по тегам