实施指针锁定后禁用 A 帧光标单击

A-Frame cursor clicking disabled after implementing Pointer Lock

我在我的项目中使用 A-Frame。有一个光标组件,可以让您通过单击与元素进行交互,这与 DOM 单击非常相似。

但是,在我实施指针锁定后,光标点击不再有效。 Pointer Lock 对我来说效果很好,我可以在我的场景中四处走动和环顾四周,光标总是出现在我面前。

为什么点击不起作用?当我没有进入指针锁定模式时,我可以确认点击工作正常。谢谢!

Link 到我的演示: http://zichao.co/exp/_simu/

我在“#floor”上添加了一个监听器。如果您成功点击楼层,控制台应该显示 'hello'。

当您尝试使用 api 实现您的 PointerLock 时,首先您需要定义一个元素,然后调用 element.requestPointerLock,对吗?这里的问题是那个元素。

我把a-scene作为元素。你应该做的是将canvas作为元素-稍后由a-frame渲染的canvas,或three.js。

A $(document).ready() 函数无法 return 您 canvas 因为它是由 three.js 插入到 dom 中,即dom 在创建 canvas 之前准备就绪。我现在做的是设置一个时间间隔循环检查是否创建了canvas,然后激活PointerLock.

已解决。