Unity3D的四種坐標系

Unity3D的四種坐標系

Unity3D的四種坐標系

1、World Space(世界坐標):我們在場景中添加物體(如:Cube),他們都是以世界坐標顯示在場景中的。transform.position可以獲得該位置坐標。

2、Screen Space(屏幕坐標):以像素來定義的,以屏幕的左下角為(0,0)點,右上角為(Screen.width,Screen.height),Z的位置是以相機的世界單位來衡量的。注:鼠標位置坐標屬于屏幕坐標,Input.mousePosition可以獲得該位置坐標,手指觸摸屏幕也為屏幕坐標,Input.GetTouch(0).position可以獲得單個手指觸摸屏幕坐標。

Screen.width =?Camera.pixelWidth

Screen.height = Camera.pixelHeigth

3、ViewPort Space(視口坐標):視口坐標是標準的和相對于相機的。相機的左下角為(0,0)點,右上角為(1,1)點,Z的位置是以相機的世界單位來衡量的。

4、繪制GUI界面的坐標系:這個坐標系與屏幕坐標系相似,不同的是該坐標系以屏幕的左上角為(0,0)點,右下角為(Screen.width,Screen.height)。

四種坐標系的轉(zhuǎn)換

1、世界坐標→屏幕坐標:camera.WorldToScreenPoint(transform.position);這樣可以將世界坐標轉(zhuǎn)換為屏幕坐標。其中camera為場景中的camera對象。

2、屏幕坐標→視口坐標:camera.ScreenToViewportPoint(Input.GetTouch(0).position);這樣可以將屏幕坐標轉(zhuǎn)換為視口坐標。其中camera為場景中的camera對象。

3、視口坐標→屏幕坐標:camera.ViewportToScreenPoint();

4、視口坐標→世界坐標:camera.ViewportToWorldPoint();

作者:倪政陽

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 1, World Space(世界坐標): 我們在場景中添加物體(如:Cube),他們都是以世界坐標顯示在場景中的...
    俊瑤先森閱讀 14,066評論 1 7
  • 一、Unity3D中有哪些坐標系? 坐標系這個概念最早是由法國數(shù)學(xué)家笛卡爾提出的,并由此創(chuàng)造了用代數(shù)方法來研究幾何...
    OneMore2018閱讀 4,612評論 0 7
  • 笛卡爾坐標系的定義 :1、每個2D笛卡爾坐標系都有一個特殊的點,稱為原點(0,0)它是坐標系的中心。2、每個2D笛...
    好怕怕閱讀 3,434評論 3 8
  • 一 、世界坐標系--全局坐標系: 用來描述游戲場景內(nèi)所有物體位置和方向的基準,也稱為世界坐標系。Unity場景中創(chuàng)...
    _涼笙閱讀 5,278評論 0 4
  • 3D坐標系是在做3D項目開發(fā)中的基礎(chǔ)概念,一般來說3D軟件或者開發(fā)工具都是采用笛卡爾坐標系來描述物體的坐標信息。笛...
    S_H_C閱讀 6,468評論 0 6