unity坐标转换问题
来源:互联网 发布:网络大电影盈利案例 编辑:程序博客网 时间:2024/05/21 18:34
unity最常用的几种坐标,屏幕坐标,世界坐标,ngui坐标,相对于父物体的坐标(localPoisition)。
但是有时候这几种坐标相互转换何其困难,让自己狠抓头。不得不操作的方式是创建虚拟体,然后来回改变他的父节点(parent),
不过unity提供了两个方法挺好用的。解决了所有坐标转换问题,
InverseTransformPoint: 绝对坐标转相对坐标,也就是世界坐标转你想要放到的父节点下的相对坐标,
TransformPoint: 相对坐标转绝对坐标,也就是你想要放到的父节点下的相对坐标转成世界坐标,
调用方法就是,比如你想把鼠标点击的位置转换成你某一个父节点下的ngui坐标。
操作如下
Vector3 vec = new Vector3();Ray ray=UICamera.mainCamera.ScreenPointToRay(Input.mousePosition);// 向屏幕发射线RaycastHit hit;if(Physics.Raycast(ray,out hit)){vec = 你想转到的父节点物体.transform.InverseTransformPoint(hit.point);}
这样就得到了一个屏幕点击转向ngui的父节点的相对坐标,其他的物体也是用此类方法使用,
这样保证了操作坐标的流畅性,不用创建那么多的虚拟体,
当然相对坐标转绝对坐标也一样的用法,不用创建虚拟体,你想把某一个父节点下的相对于这个父节点的某一个位置转成世界坐标跟上边一样的用法,
你当前的父物体.transform.TransformPoint(相对于该父物体的位置);
这样就可以转成世界坐标,世界坐标通用场景所有物体,想做什么就可以做什么了
0 0
- unity坐标转换问题
- Unity坐标转换问题
- unity 坐标转换
- unity中的坐标转换
- Unity 世界坐标转换到NGUI坐标
- Unity 世界坐标转换到NGUI坐标
- Unity 世界坐标转换到NGUI坐标
- unity世界坐标与相对坐标转换
- Unity 坐标转换 世界坐标转换到NGUI坐标
- unity 世界坐标 屏幕坐标和ngui坐标转换
- 【Unity】子物体坐标问题
- 坐标转换问题-转载
- 【Unity】关于transform.TransformPoint的坐标转换
- Unity 与 NGUI 坐标转换原理
- Unity Ugui射线坐标转换总结
- Unity里的坐标转换+动态载入
- Unity 与 NGUI 坐标转换原理
- 实例详解Unity各种坐标的转换
- @Transactional
- HDU 3078 Network LCA .
- 整理 java SE基础知识
- 用位运算的一些面试题
- Linux问题记录
- unity坐标转换问题
- 基本的约瑟夫环问题
- Java并发学习之二——获取和设置线程信息
- Codeforces 293B Distinct Paths (DFS+位运算)
- 【后缀数组】 HDOJ 4552 怪盗基德的挑战书
- PL\SQL Developer can not set pause;PL\SQL Developer save e:\emp.sql 无效
- 王者之心
- Ehcache详细解读<转>
- 定位多线程内存越界问题实践总结