UG3L13——屏幕坐标转UI相对坐标
UG3L13——屏幕坐标转UI相对坐标
RectTransformUtility
RectTransformUtility
公共类是一个 RectTransform
的辅助类
主要用于进行一些 坐标的转换等等操作
其中对于我们目前来说 最重要的函数是 将屏幕空间上的点,转换成UI本地坐标下的点
将屏幕坐标转换为UI本地坐标系下的点
RectTransformUtility.ScreenPointToLocalPointInRectangle()
- 参数一:相对父对象的坐标系(需要RectTransform类型,且一定是自己的父对象,否则转换可能出现偏差! )
- 参数二:屏幕点(要转换的相对于屏幕坐标系的点,使用
PointerEventData
的position
会更准确) - 参数三:摄像机(需要为UI的摄像机,可以直接用
PointerEventData
的enterEventCamara
) - 参数四:最终得到的点(
Vector2
类型,使用out
关键字,需要在使用该函数前就声明好,转换完成后该变量就会转载转换好的点)
一般配合拖拽事件使用,效果远比 位置增加拖拽的变化量 更好
1 | using UnityEngine; |
https://enjoysevenliu.github.io/2023/08/13/Unity就业路线学习笔记/UG——UI系统笔记/UG3——UGUI系列/UG3L13——屏幕坐标转UI相对坐标/
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 文KRIFE齐的博客!