1:屏幕坐标转UI坐标
首先我们来明确下三个坐标概念:
世界坐标:指的是Transform组件的position字段
UI坐标:指的是RectTransform组件的anchoredPosition字段

屏幕坐标:指的是屏幕空间的坐标 (也可以说是相机空间的坐标)。反正关于屏幕坐标,大家只要知道以下2点即可
- 我们在Unity中获取的鼠标的坐标,就是屏幕坐标!
- 屏幕坐标和世界坐标不是一个东西,屏幕坐标和UI坐标不是一个东西!
Unity官方提供了一个方法,让我们可以很简单的把屏幕坐标 转换成UI坐标!
这个方法就是:
RectTransformUtility.ScreenPointToLocalPointInRectangle(RectTransform rect, Vector2 screenPoint, Camera cam, out Vector2 localPoint);
但是,我一直没太搞懂这个方法,网上又查找不到相关的资料。
官方文档感觉根本没描述清楚,只有自己慢慢尝试。
以下是自己对官方文档的翻译,以及自己尝试之后对官方文档的一些理解。
理解之后,这个方法还是非常好用哒!
(很可能有错误的地方,希望大家指出呢!

最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



