Web组装游戏和低延迟键盘鼠标

时间:2017-03-04 21:41:41

标签: javascript interrupt-handling webassembly

如何为Wasm应用程序实现低延迟键盘/鼠标输入? 那个伪装机器人是如何实现它的呢? http://webassembly.org/demo/

有没有办法在wasm app中发送interupts?

谢谢!

1 个答案:

答案 0 :(得分:1)

在当前嵌入的浏览器中,您只能通过JavaScript调用和调出WebAssembly。最简单的方法是依靠Emscripten来公开这样的API,例如使用SDL2(支持鼠标事件)或html5.h。 Unity(用于AngryBots演示)有自己的mouse handling。您可以避免使用Emscripten并自行滚动,但根据您的操作,它可能会变得复杂。

可以从JavaScript调用WebAssembly,因此它的常规event loop是您可以获得的最快中断速率。 Emscripten和Unity公开了他们自己的这个事件循环版本,并为鼠标事件提供了回调。

稍后,WebAssembly可以gain APIs使其可以直接访问DOM和其他浏览器API。