求助,Fgui的坐标转为Unity世界坐标
// 获取当前ui
UI_Main uiMain = GameManger.Instance.ui_Main;
var aObject = uiMain.m_定位符;
Vector2 pos = aObject.LocalToGlobal(Vector2.zero);
//2.UI坐标转世界坐标
pos = GRoot.inst.LocalToGlobal(pos);
//FairyGUI屏幕坐标 转 Unity屏幕坐标
pos.y = Screen.height - pos.y;
//一般情况下,还需要提供距离摄像机视野正前方distance长度的参数作为screenPos.z(如果需要,将screenPos改为Vector3类型)
Vector3 worldPos = Camera.main.ScreenToWorldPoint(pos);
// x轴 我们不需要
worldPos.z = 0;
Debug.Log("世界坐标:" + worldPos + "占位符UI坐标" + pos);
transform.position = worldPos;
这是代码,直接复制文档的代码,为何他转换的坐标根本不对呢?
求助下大佬
没有找到相关结果
已邀请:
1 个回复
谷主
赞同来自: