【Unity3D】Unity3D 实现屏幕坐标和3维空间坐标的转化_屏幕坐标

Input.mousePosition就是鼠标所在的位置的坐标

函数Camera.main.ScreenToWorldPoint就是屏幕坐标转化三维空间的函数
Camera.main.ScreenToWorldPoint

【Unity3D】Unity3D 实现屏幕坐标和3维空间坐标的转化_屏幕坐标_02

把脚本挂载在主摄像机上
运行
【Unity3D】Unity3D 实现屏幕坐标和3维空间坐标的转化_屏幕坐标映射_03

就得到屏幕坐标映射在三维世界中的坐标了
不过有一点是,转化之后z轴是-10
这个时候只要z轴+10就是屏幕映射到三维世界的正确坐标了

Vector3 mousePos = Camera.main.ScreenToWorldPoint(Input.mousePosition) + new Vector3(0, 0, 10);