Unity中的世界坐标和NGUI中的坐标的相互转换
来源:互联网 发布:苹果版sai软件 编辑:程序博客网 时间:2024/05/16 08:53
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); //将修改过的坐标赋给目标物体坐标
- Unity中的世界坐标和NGUI中的坐标的相互转换
- Unity 世界坐标 和 NGUI 屏幕坐标间的转换
- unity 世界坐标 屏幕坐标和ngui坐标转换
- Unity 世界坐标转换到NGUI坐标
- Unity 世界坐标转换到NGUI坐标
- Unity 世界坐标转换到NGUI坐标
- Unity 坐标转换 世界坐标转换到NGUI坐标
- OpenGL中的屏幕坐标和世界坐标的转换
- unity中的坐标转换
- unity中世界坐标和绝对坐标之间的转换
- Unity 的局部坐标转换到世界坐标的接口
- Unity世界坐标与本地坐标的一种转换方法
- Cesium中的几种坐标和相互转换
- unity世界坐标与相对坐标转换
- Unity3D中世界坐标转换到NGUI世界坐标
- Unity 世界坐标和局部坐标
- Unity3D将屏幕坐标上的点转换为世界坐标中的点
- Unity3D中世界坐标转换到NGUI坐标
- 项目负责的心得
- iOS UITableViewCell 展开实现
- 快速排序
- git branch的使用
- Xcode生命周期简介
- Unity中的世界坐标和NGUI中的坐标的相互转换
- UBOOT编译学习-----配置过程
- 单件模式(Singleton Pattern
- 浅析gcc、arm-linux-gcc和arm-elf-gcc的关系-转
- [Leetcode]23. Merge k Sorted Lists @python
- python读取写入文件
- java实现的简单网页爬虫:Servlet + MySQL5.5(二)
- Makefile万能写法(gcc程序以及arm-linux-gcc程序)-转
- Jquery 动画效果 左右移动