unity 座標系轉換 unity座標系間的轉換

2021-10-19 04:20:03 字數 622 閱讀 3726

1.世界座標系:遊戲內物件都在乙個世界座標系內,可以放心的使用世界座標進行transform的運算。

2.區域性座標系:基於父物體的座標系,適合基於父物體做的transform運算,運算時要確保兩個物件在乙個本地座標系內。recttransform的width和height是本地座標系,需要求寬高的世界長度可以使用

vector3 corners = new vector3[4];

_inst.recttransform.getworldcorners(corners);

vector3 widthdelta = corners[2] - corners[1];

vector3 heightdelta = corners[0] = corners[1];

將點座標與widthdelta和heightdelta相加減就可以得出世界空間下的rect邊緣座標。

3.視口座標系:與螢幕解析度無關,左下(0,0),右上(1,1),適合用來檢測物件是否顯示在螢幕上(對映到視口座標系後的x,y都在0,1之間)。

4.螢幕座標系:左下(0,0),右上(screen.width,screen.height),適合用來計算手指輸入與ui間的運算,計算時注意camera.aspect與game視窗的aspect不同時會縮放。

Unity 座標系轉換

在unity中我們通常會用到以下幾個座標系下的點 這裡需要說明的是,我們在獲取滑鼠位置的時候,input.mouseposition來獲取滑鼠的位置,這裡獲取到的滑鼠位置是基於螢幕座標的。通過該函式返回的是vector3型別的變數,但z分量始終為0。1.螢幕轉世界座標 vector3 camera....

unity常用的座標系轉換

當呼叫別人的介面時,經常會有獲取位置或向量的介面。遇到這些資料時,先要弄清楚現在獲取的資料在哪個座標系下的。是否需要進行座標系變換,一般提供的位置和向量都是在世界座標系的,此時需要注意 對方的座標系是左手座標系還是右手座標系 因為unity是左手座標系,如果介面提供的資料是基於右手座標系的話,我們需...

Unity 座標系轉換的方法

世界座標 螢幕座標 camera.worldtoscreenpoint transform.position 這樣可以將世界座標轉換為螢幕座標。其中camera為場景中的camera物件。螢幕座標 視口座標 camera.screentoviewportpoint input.gettouch 0 ...