Unity3D的四种坐标系
World Space(世界坐标): : 物体相对于世界来说的坐标系
左手坐标系
在unity中, 有一个肉眼可见的世界坐标系
以世界原点为坐标原点建立的三维坐标系(U3D场景中的整个球形世界的原点) unity中在物体身上自动显示的坐标系,获得GameObject世界坐标的接口为Transform.position 。局部坐标系是GameObject以Parent的世界坐标点为坐标原点建立的三维坐标系,GameObject的局部坐标即与Parent的相对位置。若GameObject无Parent,其局部坐标与世界坐标相同,获得GameObject局部坐标系的接口为
通过Transform.localPosition可以获得该位置坐标。
世界坐标转化为屏幕坐标 Camera.WorldToScreenPoint
世界坐标转化为视口坐标 Camera.WorldToViewportPoint
Screen Space(屏幕坐标):
以屏幕左下角为原点建立的一个二维坐标系,
屏幕的左下角坐标为(0, 0),右上角为(Screen.width, Screen.height) 。
通过Input.mousePosition获取 的鼠标坐标是一个屏幕坐标。
屏幕坐标转化为世界坐标 Camera.ScreenToWorldPoint
屏幕坐标转化为视口坐标 Camera.ScreenToViewportPoint
ViewPort Space(视口坐标): 相当于锚点的情况
视口坐标是标准是相对于相机的。
相机的左下角为(0,0)点,右上角为(1,1) 点,
Z的位置是以相机的世界单位来衡量的。
视口坐标转化为世界坐标 Camera.ViewportToWorldPoint
视口坐标转化为屏幕坐标 Camera.ViewportToScreenPoint
GUI坐标系: 主要记住上面三个坐标,这个GUI的不死记
GUI坐标是指通过OnGUI方法绘制UI时使用的坐标,这个坐标系
与屏幕坐标系相似 ,它同样是以像素来定义的,不同的是该坐标系以
~~屏幕的左上角为(0,0)点,右下角为(Screen.width,Screen.height)。~~
本地坐标系: 在unity中, 物体相对于父物体来说的坐标系<