Re: [w3c/gamepad] spec `gamepadbuttondown` and `gamepadbuttonup` events (issue #4) (#15)

Has there been any more movement on this? I also think it'd be welcoming to have an event-driven model, but only as an inclusion alongside the polling model as well.

The following question was asked in #22:
> With that in mind, I guess my question to you is: do you know any practical examples where lost gamepad events are actually a real problem?

Lost gamepad events can be a real problem when the intended use is for accurate input visualization. A lost frame of data can be reasonable in terms of displaying said data, but an inconsistency between axis values or when two or more buttons were pressed simultaneously is not. 

The suggested approach to #4 to remedy such a scenario (the API providing an event subscription strategy for multiple axes/buttons/etc) doesn't account for this kind of scenario because it could create a disconnect between axes and button represented at a fixed point in time due to the asynchronicity.

We could then propose something like `onGamepadChange` that would subscribe to the entire gamepad, but something like that would feel like a bastardization of the polling strategy, and would that really be better than polling from the start?

It's why I'm not against the inclusion of events, but the removal of polling wouldn't allow for the kind of scenarios I'm depicting. For something like adding gamepads as a form of navigational input for a webpage, events would be the perfect approach since it'd be idiomatic in comparison to other event-driven practices and wouldn't necessarily encounter the kind of issues I mentioned above.

This also isn't a theoretical application either. I run and manage [gamepadviewer.com](gamepadviewer.com) which does exactly what it says, and the amount of usage is not insignificant, either. According to the [`getGamepads()` feature data](https://www.chromestatus.com/metrics/feature/timeline/popularity/1916), the site ranks at least 34th in the list, so everything I've posited isn't hyperbole.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/gamepad/pull/15#issuecomment-633947972

Received on Tuesday, 26 May 2020 10:41:10 UTC