3D数学--Unity坐标的转换
程序员文章站
2022-03-26 16:04:45
...
常用的转换坐标方法
//将一个点的世界坐标转换局部坐标
transform.InverseTransformPoint(Vector direction);
//将一个点的局部坐标转换世界坐标
transform.TransformPinot(Vector direction);
//将一个向量的局部坐标转换世界坐标
transform.TransformVector(Vector direction);
//将一个向量的世界坐标转换为局部坐标
transform.InverseTransformVector(Vector direction);
//将一个方向从局部坐标转换到世界坐标
transform.TransformDirection(Vector direction);
//将一个方向世界坐标转换到局部坐标
transform.InverseTransformDirection(Vector direction);
//注意局部坐标都是相对于当前物体的位置
世界坐标转屏幕坐标
Vector 3 wToS = Camera.main.WorldToScreenPoint(Ventou direction)
屏幕坐标转世界坐标
Vector 3 wToS = Camera.main.ScreenToWorldPoint(Ventou direction)
视口坐标转屏幕坐标
Vector 3 sToV= Camera.main.ViewportToScreenPoint(Ventou direction)
屏幕坐标转视口坐标
Vector 3 vToS= Camera.main.ScreenToViewportPoint(Ventou direction)
世界坐标转视口坐标
Vector 3 vToS= Camera.main.WorldToViewportPoint(Ventou direction)
视口坐标转世界坐标
Vector 3 vToS= Camera.main.ViewportPointToWorld(Ventou direction)