1
我正在Unity3D中爲VR項目實施注視算法。到目前爲止,我在這裏發現的是使用Physics.Raycast
並將BoxCollider2D組件添加到每個按鈕對象以檢測用戶是否正在查看它。我想避免使用Raycast,因爲它非常昂貴,並且可能會產生性能問題,因爲我有非常複雜的UI結構來處理。Unity3D中用於UI項目的Raycast替代方案
我嘗試使用光標鎖定,但不幸的是它不適用於移動平臺。
我還用攝影機視口的中心,以檢查是否按鈕對象的rect
包含
Camera.main.ViewportToWorldPoint(new Vector3(0.5f,0.5f,Camera.main.nearClipPlane));
當按鈕對象的矩形變換爲錨中等中心它正常工作,創造世界點嘗試。但是當它有一些其他設置或按鈕稍微傾斜時(在世界空間畫布中),它不起作用。我不太瞭解直接變換如何工作,以及如何找到它在世界空間中的確切位置。
有誰知道解決方案?或者有沒有其他方法可以做到這一點?
各種幫助是高度讚賞。
我不知道你在做魔環或沒有,但不管怎樣這是念好https://developer.oculus.com/blog/unitys-ui-system -in-vr/ –
我已經從Unity中檢查示例項目,並且它在事件系統的BaseRaycaster類上實現。 –