1. 程式人生 > >Unity 釋出WebGL 關於射線檢測

Unity 釋出WebGL 關於射線檢測

今天做WebGL,其中涉及到射線檢測

RaycastHit hit;

if (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit))

在Unity上執行沒有問題,但是釋出網頁版之後就執行不了,

後來輸出Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition)

顯示結果為false。之前遇到射線檢測問題是因為攝像機的tag不是Main Camera,在確定相機是Main Camera的情況下,我開始找碰撞的問題,檢測一下確定Mesh Renderer和Mesh Collider元件都有,但是Mesh Collider元件上 Convex屬性引起了我的注意,檢視文件,官方給出的解釋是,勾選這個屬性之後,這個網格碰撞器將會與其他網格碰撞器發生碰撞。我嘗試性的勾選了這個選項,釋出網頁之後射線檢測返回為True,射線檢測恢復正常。

不知道為什麼勾選Mesh Collider的Convex屬性之後射線檢測恢復正常,可能平臺不一樣,編譯機制也發生了變化