2016-09-22 54 views
0

我在我的項目中使用了A-Frame。有這個遊標組件可讓您通過點擊與元素進行交互,這與DOM點擊非常相似。在實現指針鎖定後,A-Frame光標點擊被禁用

但是,在實現我的指針鎖定後,光標點擊不再有效。 指針鎖適用於我,我可以四處走動並環視四周,光標總是出現在我的面前。

爲什麼點擊不起作用?當我沒有進入指針鎖定模式時,我可以確認點擊工作正常。謝謝!

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

我對 '#floor' 添加的監聽器。如果你成功地點擊了地板,控制檯應該說'你好'。

+0

您使用哪個組件激活Pointerlock?演示鏈接可能會有所幫助。 –

+0

我使用web apis實現了我自己的指針鎖定:https://developer.mozilla.org/en-US/docs/Web/API/Pointer_Lock_API,我剛剛在問題中添加了我的演示的鏈接。 –

+0

[這是我遇到的問題](https://github.com/aframevr/aframe/issues/1935),事實證明,這畢竟不是與指針鎖相關的。一旦解決了這個問題,[鼠標控制](https://github.com/donmccurdy/aframe-extras/blob/master/src/controls/mouse-controls.js)將成爲點擊+指針鎖定的一個工作示例。 –

回答

0

當您嘗試使用apis實現PointerLock時,首先需要定義一個元素並調用element.requestPointerLock,是嗎?這個問題就是這個元素。

我把a-scene作爲元素。你應該做的就是將畫布作爲元素 - 稍後由a-frame或three.js渲染的畫布。

A $(document).ready()函數無法返回畫布,因爲它是由three.js插入到DOM中的,即在創建畫布之前DOM已準備就緒。我現在所做的是設置一個循環間隔並檢查畫布是否已創建,然後激活PointerLock。

已解決。