Unity3D 坐标系浅析(2): 屏幕坐标系、视图坐标系
世界坐标系:以世界坐标(0,0)点为参考物记录的相对位置。
物体坐标系:以父类坐标为参考物 记录的相对位置。
相机坐标系:以相机坐标为参考物的 记录的相对位置。
视图坐标系:左下角 (0,0) 右上角(1,1)
屏幕坐标系: Input.mousePosition 左下角 (0,0) 右上角(屏幕的宽 ,屏幕的高 )
屏幕坐标系: 像素坐标系
通过Debug.Log(Input.MousePosition)来记录鼠标位置。
屏幕坐标系又称为像素坐标系,GIF图没有记录我鼠标的位置,我们可以看到,我的屏幕像素为1920*1080
注意我的左下角的打印信息,当我的鼠标位置在屏幕坐下角的时候,打印的信息是(0,0,0)
当我的鼠标位置在屏幕右上角的时候,打印的信息是(1920,1080,0)
我们可以看出来鼠标在屏幕的位置,是以像素单位来记录的。
视图坐标系
像阴阳师这类游戏的抽卡游戏中,有画符这种操作,在屏幕上画的图按视图坐标系比例映射到Texture。。
在Camera的几个API中,ScreenToViewportPoint是屏幕坐标系转视图坐标系,ScreenToWorldPoint是屏幕坐标系转世界坐标系。
注意左下角的打印日志
当鼠标在屏幕左下角的时候,打印的是(0,0,0)当鼠标在屏幕左上角的时候,打印的是(0,1,0)
当鼠标在屏幕右下角的时候,打印的是(1,0,0)
当鼠标在屏幕右上角的时候,打印的是(1,1,0)
我们可以看出来屏幕坐标系是以1为单位的坐标系