码迷,mamicode.com
首页 > 其他好文 > 详细

将NGUI的坐标转换Unity中的世界坐标

时间:2014-08-14 10:21:58      阅读:260      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   os   io   for   ar   div   

上一篇写了关于Unity中的世界坐标转换为NGUI中的坐标,这篇来写一下关于NGUI中的坐标转换为Unity中的世界坐标,代码如下:

 1       GameObject targetObject = (GameObject)Instantiate(Resources.Load("Model/"+name));
 2          Camera worldcamera = NGUITools.FindCameraForLayer(targetObject.layer);     //这里是通过物体的层获得相应层上的相机
 3          Camera guiCamera = NGUITools.FindCameraForLayer(obj.layer);   //通过脚本所在物体的层获得相应层上的相机
 4          if (worldcamera == null || guiCamera == null)
 5         {
 6             return;
 7         }
 8         Vector3 pos = guiCamera.WorldToScreenPoint(obj.transform.position);         //获取UI界面的屏幕坐标
 9         pos.z = 1f;//设置为零时转换后的pos全为0,屏幕空间的原因,被坑过的我提醒大家,切记要改!
10         pos = worldcamera.ScreenToWorldPoint(pos);                              //将屏幕坐标转换为世界坐标
11         pos.y = 0f;
12         targetObject.transform.position = new Vector3(pos.x, pos.y, pos.z);      //将修改过的坐标赋给目标物体坐标

 

将NGUI的坐标转换Unity中的世界坐标,布布扣,bubuko.com

将NGUI的坐标转换Unity中的世界坐标

标签:style   blog   color   os   io   for   ar   div   

原文地址:http://www.cnblogs.com/atong/p/3911636.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!