I was curious about the latency of the GameInput API in Adobe AIR and decided to test it a bit using my game prototype. I tested it both as a desktop app, and as an OUYA game. Here’s the results, first in the desktop:
And in the OUYA:
Perhaps it’s not very clear by the videos (sorry about the quality), but the latency, if any, is negligible. Testing with my prototype – where you can run around and jump using a circle (using GameLooper, Nape, and KeyActionBinder) – feels very responsive.
The OUYA version above had some low frame rates, especially when too many particles where on screen, but it’s due to the fact that it was compiled as a debug SWF and it used repetitive vector shape drawing (as opposed to hardware-accelerated bitmaps). It still felt very accurate, though.
Word of warning: the version of Adobe AIR I tested – 3.8 r970 – seems to have some issue in the OUYA where game controllers just die after quitting the application the first time (they are detected by GameInput after a second run, but are always null
). I still have to investigate this, and check whether older (or newer) versions of the framework have the same issue. When it works, though, it’s very accurate.
Update (August 23rd, 2013): the bug that prevents GameInput from working has been identified, and there’s a workaround. See this post for more details.