Unity - 使用ScreenToWorldPoint的時候,回傳值是camera的position而不是目標點座標的問題
在使用Camera.main.ScreenToWorldPoint(Input.mousePosition))的時候,有時候會發現取得的是Camera的座標而不是滑鼠的座標。
自己做的參考圖。
因為事實上是需要提供Z參數的
Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, Z));
Z代表的是Depth,因此如果Z=0的話就會是Camera的transform position了,因為此時nearClip趨近於Camera,不論你畫面中哪個點都會趨近於Camera的position
Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, Z));
Z代表的是Depth,因此如果Z=0的話就會是Camera的transform position了,因為此時nearClip趨近於Camera,不論你畫面中哪個點都會趨近於Camera的position
Labels:
Unity3D
Subscribe to:
Posts (Atom)