Я хотел бы прослушивать события нажатия кнопок на контроллере xbox one, но кажется, что многие решения для этого являются экспериментальными и находятся в стадии разработки. В большинстве найденных мной примеров, показывающих, как получать ввод с геймпада, используется метод опроса для многократной проверки геймпада на наличие событий, но для моего приложения крайне важно, чтобы я мог записывать точное время нажатия кнопки, а не хотите пропустить нажатия кнопок между сканированием геймпада.
Я могу использовать либо Firefox, либо Chrome, но я еще не получил следующие решения для работы ни в одном из браузеров:
Firefox: согласно этой странице https://www.chromestatus.com/feature/5989275208253440#, «события кнопки геймпада и оси реализованы в Firefox за флагом dom.gamepad.non_standard_events.enabled
». Я включил это в Firefox, но прослушиваю события изменения состояния (как описано в https://www.smashingmagazine.com/2015/11/gamepad-api-in-web-games/) по-прежнему не действует.
Chrome: эта страница github https://github.com/MozillaReality/gamepad-plus/blob/master/README.md похоже, что он может расширить API Gamepad, поэтому я также могу прослушивать события нажатия кнопок в Chrome, но когда я пытаюсь скомпилировать JavaScript как автономный модуль, использующий npm run build
, я получаю сообщение об ошибке node_modules_missing
, и сборка завершается сбоем.
Буду признателен за совет, как включить .addEventListener('gamepadbuttondown'
... для работы в любом из этих браузеров.