Unity 3D坐標(biāo)系轉(zhuǎn)換
2021-2-26 11:39:34??????點擊:
首先是屏幕坐標(biāo)和世界坐標(biāo)的相互轉(zhuǎn)換:
WorldToScreenPoint函數(shù)接收一個世界空間下的位置信息,然后返回其所在的屏幕空間位置,以及其相對于攝像機(jī)的深度信息,該深度信息由世界空間下攝像機(jī)和輸入位置的z值來決定。 一個例子是:攝像機(jī)的位置為(0.0, 0.0 , -10.0),輸入的位置為(0.0,0.0,1.0)。則返回的結(jié)果為(screen.width/2 , screen.height/2 , 1-(-10)); 注意攝像機(jī)指向-z方向! ScreenToWorldPoint則是與之相反,輸入屏幕空間位置以及相應(yīng)的深度信息(注意深度信息應(yīng)該為目標(biāo)z值金和相機(jī)z值的差值),可以返回其所在的世界坐標(biāo)位置。
視口坐標(biāo)和世界坐標(biāo)與之相似:
WorldToViewportPoint:輸入世界坐標(biāo),返回的是對應(yīng)的點所在的視口位置,當(dāng)然以及其相對于攝像機(jī)的深度信息(距離)
ViewportToWorldPoint:輸入視口坐標(biāo)(記得對應(yīng)的深度信息),返回點所在的世界坐標(biāo)
視口坐標(biāo)和屏幕坐標(biāo)非常簡單,正如上面的說明,只要知道分辨率就可以輕松轉(zhuǎn)換,這里不再贅述。
- 上一篇:UNITY3D MonoDevelop不能粘貼外部代碼文字怎 2021/2/27
- 下一篇:Unity 3d里的相機(jī)跟隨 2021/2/25


