世界坐标转到UGUI坐标
2016-05-26 11:06
399 查看
尝试了几个版本都不对,下面俩是正确的。
public static Vector3 WorldToUI(Camera camera,Vector3 pos){ CanvasScaler scaler = GameObject.Find("UIRoot").GetComponent<CanvasScaler>(); float resolutionX = scaler.referenceResolution.x; float resolutionY = scaler.referenceResolution.y; Vector3 viewportPos = camera.WorldToViewportPoint(pos); Vector3 uiPos = new Vector3(viewportPos.x * resolutionX - resolutionX * 0.5f, viewportPos.y * resolutionY - resolutionY * 0.5f,0); return uiPos; } public static Vector2 WorldToUIPoint(Transform worldGo) { Vector2 pos; RectTransformUtility.ScreenPointToLocalPointInRectangle(canvas.transform as RectTransform, gameCamera.WorldToScreenPoint(worldGo.transform.position), canvas.worldCamera, out pos); RectTransform rect = transform.transform as RectTransform; return pos; }
相关文章推荐
- ios表视图之UITableViewCellAccessoryCheckmark单选、多选状态保存
- iOS开发之高级视图——UINavigationBar
- Amazon SQS(Simple Queue Service) 简介
- CodeForces675AInfinite Sequence
- java中String、StringBuffer、StringBuilder的区别
- 讲讲Handler+Looper+MessageQueue 关系
- SSH框架网上商城项目第3战之使用EasyUI搭建后台页面框架
- Simple ABAP - Create allowed values in a characteristic by BAPI_CHARACT_CREATE
- 场景MFC UI界面库
- Cell的一些坑: UITableViewCell宽度,在iphone5的时候是320,在iphone6的时候为啥也是320?
- dpm(!true);
- pycurl和requests使用感受
- Queue LifoQueue and PriorityQueue
- iOS开发之高级视图—— UISearchController
- String、StringBuilder和StringBuffer区别
- 用户图形化编程接口(GUI)布局要点
- UIImagePickerController关于图片裁剪
- MySQL启动错误Starting MySQL.Manager of pid-file quit without updating file.
- minigui安装及问题总结
- MUI之父页面刷新