屏幕坐標:左下角為原點。
void Update(){ // 獲取物體的屏幕坐標,世界坐標->屏幕坐標 Vector3 screenPos = Camera.main.WorldToScreenPoint(cube.position); Debug.Log("x = " + screenPos.x + ", y = " + screenPos.y + ", z = " + screenPos.z); }
拖動物體觀察打印結果可知:
z值是物體到攝像機所在平面(屏幕)的距離,物體在屏幕左下角時x、y為0,物體在屏幕右上角時x、y為當前的屏幕分辨率(Using resolution)。
鼠標坐標:左下角為原點。
void Update(){ // 獲取物體的屏幕坐標,世界坐標->屏幕坐標 Vector3 mousePos = Input.mousePosition; Debug.Log("x = " + mousePos.x + ", y = " + mousePos.y + ", z = " + mousePos.z); }
移動鼠標觀察打印結果可知: z值一直是0,物體在屏幕左下角時x、y為0,物體在屏幕右上角時x、y為當前的屏幕分辨率(Using resolution)。(和屏幕坐標很相似)