javascript - 如何在浏览器中使用 WebGL 实现 FPS View ?

标签 javascript html 3d webgl copperlicht

我正在使用 Copperlicht ,我想创建一个可用的 FPS。 The demo控件展示了为什么浏览器环境让这成为一种痛苦。

为了实现 FPS 相机控制,您需要跟踪鼠标的相对位置 - 换句话说,它的运动,而不是它的绝对屏幕坐标。鼠标可以随时离开浏览器(这是理所当然的)并且无法被跟踪,除非用户在页面内发起拖动事件。单击事件更改焦点并阻止应用程序使用鼠标数据作为输入。

在拖动过程中可以跟踪鼠标位置,但这需要用户按住鼠标左键。这不好,因为左键单击通常用于其他用途。按住按钮既累又麻烦。

我唯一能想到的就是自动化鼠标中键。按下鼠标中键可将焦点保持在浏览器中,并将浏览器窗口外的左/右单击事件保持在浏览器的焦点中。是否可以使用 JavaScript 使鼠标中键保持按下状态?

如果没有,是否有一个“纯粹”的解决方案?我宁愿不去 flash 或 Java 或插件作为答案。

最佳答案

thread是关于这个主题的好读物。似乎至少为 Firefox 建议了此功能的原型(prototype)和 Chrome .

关于javascript - 如何在浏览器中使用 WebGL 实现 FPS View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5768783/

相关文章:

javascript - 如何不保留 html anchor 的历史记录

c++ - 在 3D 世界中移动 - OpenGL

javascript - 如何检查选择选项中的所有值是否与javascript相同?

javascript - Turbolinks:body 标记内的 JavaScript 代码未按其应有的方式执行

javascript - JQuery 不会从偶数链接更改 div 的内容?

c# - 点在 3D 线上的投影

matlab - 删除切片中的小值

javascript - 删除特定行中的先前单元格并在 Java 脚本中创建新单元格

javascript - Weebly 自定义搜索栏

javascript - 制作圆形 LeafLet map