gpt4 book ai didi

javascript - JavaScript 游戏中的鼠标管理

转载 作者:数据小太阳 更新时间:2023-10-29 04:18:41 24 4
gpt4 key购买 nike

我使用 JavaScript、HTML5 canvas 元素和 WebGL 制作了一个简单的第一人称视角 3D 游戏,只是为了好玩。

理想情况下,我想通过使用键盘移动和鼠标环顾四周来控制我的移动,就像您在 FPS 游戏中通常做的那样。正如您可能了解的那样,浏览器对此有一些限制,因为无法捕获鼠标:

  • 使用 onmousemove 事件时,当鼠标指针到达我的屏幕边界时将不会检测到进一步的移动(例如,这意味着我将无法绕圈跑)<
  • 看到鼠标在屏幕上移动并不是世界末日,但有点烦人

据我所知,在 JavaScript 中隐藏鼠标和设置它的位置是不可能的。 因此,我的问题是:

如果我们做不到这些,我们可以做些什么来在浏览器鼠标方面接近桌面游戏体验?

我的意思是现在,使用当前的 API。不是“可以改变某些标准以使生活更轻松”。此外,我意识到我可以使用键盘环顾四周,但我们又回到了 1995 年,当时 Quake 确实是这样玩的。当然,我知道编写桌面应用程序或至少使用 Flash 会更容易,但我试图在此处突破 JavaScript 的限制。

除了这些,您还有什么建议?任何类型的引用、现有游戏、疯狂的想法、破解甚至浏览器特定的解决方案都将不胜感激。

最佳答案

我已经为一个游戏做了一些鼠标隐藏的实验,据我记得只有 Opera 我没有做 behave,所以我给它打了叉。一个关键点是,某些浏览器会将完全不可见的光标图像显示为黑框,但只要有一个几乎不可见的像素,它就可以工作。随意拿下鼠标隐藏部分和光标文件。 http://ebusiness.hopto.org/iimdtdt/

我自己考虑了一下环顾四周的部分,因为向上/向下移动很容易,因为无论如何你都会给它加盖,你所要做的就是确保盖与鼠标移动上限。对于横向部分,我建议你尝试搞乱灵敏度,当鼠标靠近屏幕边缘时,灵敏度应该朝屏幕边缘的方向上升,而远离屏幕边缘的方向下降。我没有尝试过这种方法,所以我不知道它实际效果如何,但它应该有助于将鼠标保持在中间区域,即使用户以一种方式旋转多于另一种方式也是如此。

祝项目顺利,听起来很令人兴奋。

关于javascript - JavaScript 游戏中的鼠标管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2616586/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com