1. 程式人生 > >返回物體的自身座標

返回物體的自身座標

 public static Vector3 WorldToUI(GameObject a, Vector3 pos)
    {

        CanvasScaler scaler = a.GetComponentInChildren<CanvasScaler>();
        Canvas canv = a.GetComponentInChildren<Canvas>();
        float resolutionX = scaler.referenceResolution.x;

        float resolutionY = scaler.referenceResolution.y;

        Vector3 viewportPos = canv.worldCamera.WorldToViewportPoint(pos);

        Vector3 uiPos = new Vector3(viewportPos.x * resolutionX - resolutionX * 0.5f,

        viewportPos.y * resolutionY - resolutionY * 0.5f, 0);

        return uiPos;

    }
返回物體的自身座標