打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
1、将Unity中的世界坐标转换成NGUI中的坐标,代码如下所示:
1、将Unity中的世界坐标转换成NGUI中的坐标,代码如下所示:

    public GameObject TargetObject;         //目标物体

    public Camera worldcamera;         //世界相机。

    public Camera guiCamera;           //UI相机

    // Use this for initialization

    void Start()

    {

        worldcamera =NGUITools.FindCameraForLayer(TargetObject.layer);     //这里是通过物体的层获得相应层上的相机

        guiCamera = NGUITools.FindCameraForLayer(this.gameObject.layer);   //通过脚本所在物体的层获得相应层上的相机

    }

 

    // Update is called once per frame

    void Update()

    {

 

    }

    void LateUpdate()

    {

        Vector3 pos = worldcamera.WorldToScreenPoint(TargetObject.transform.position);         //获取目标物体的屏幕坐标

        pos = guiCamera.ScreenToWorldPoint(pos);                              //将屏幕坐标转换为UI的世界坐标

        pos.z = 0;                                //由于NGUI 2D界面的Z轴都为0

        transform.position =new Vector3(pos.x,pos.y,pos.z);      //将修改过的坐标赋给UI界面

    }

}

2、将NGUI的坐标改为Unity中的世界坐标,代码如下所示:

 GameObject targetObject = (GameObject)Instantiate(Resources.Load("Model/"+name));

         Camera worldcamera = NGUITools.FindCameraForLayer(targetObject.layer);     //这里是通过物体的层获得相应层上的相机

         Camera guiCamera = NGUITools.FindCameraForLayer(obj.layer);   //通过脚本所在物体的层获得相应层上的相机

         if (worldcamera == null || guiCamera == null)

        {

            return;

        }

        Vector3 pos = guiCamera.WorldToScreenPoint(obj.transform.position);         //获取UI界面的屏幕坐标

        pos.z = 1f;//设置为零时转换后的pos全为0,屏幕空间的原因,被坑过的我提醒大家,切记要改!

        pos = worldcamera.ScreenToWorldPoint(pos);                              //将屏幕坐标转换为世界坐标

        pos.y = 0f;

        targetObject.transform.position = new Vector3(pos.x, pos.y, pos.z);      //将修改过的坐标赋给目标物体坐标

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
unity3d学习笔记(十一)NGUI结合Shader制作小地图
unity3d中的坑和解决方案
【Unity技巧】自定义消息框(弹出框)
unity的相关技巧
Unity+NGUI性能优化方法总结
uLua最新的Unity+Lua热更新解决方案!!!【技术综合贴】
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服