# 【世界坐标系和屏幕坐标系】
Unity 使用的是左手坐标系
# 世界坐标系
- x轴向 → 为正
- y轴向 ↑ 为正
- z轴向由屏幕外向屏幕里射穿的方向为正
把一个坐标点从"世界"坐标"转"换成当前transform的"本地"坐标 如
Vector3 ptLocal = cam.transform.InverseTransformPoint(fovPt.transform.position);
# 屏幕坐标系
- 原点在屏幕左下角
- → 为x正方向
- ↑ 为y正方向
- 插进屏幕方向为z
//物体的世界坐标转换为屏幕坐标
Camera.WorldToScreenPoint()
//屏幕坐标转换为世界坐标
Camera.ScreenToWorldPoint()
# 屏幕宽度和高度
Screen.width 和 Screen.height
# 点击屏幕射线
屏幕上的一点射出一条射线,获取射线击中的对象: 关键在于Camera 里的 ScreenPointToRay 方法得到射线。
# 屏幕位置
Input.mousePosition.x 和 y
← 【对象池】 【Unity场景管理】 →