完全按照Gameobject缩放UI

时间:2018-06-13 00:33:57

标签: unity3d

我的场景中有一个游戏对象。我想显示游戏对象的维度,如下所示:enter image description here所以,我创建了一个UI预制件。现在,当我试图扩展UI(我们是一个世界UI画布)预制。它没有正确缩放!我该怎么做?我现在正在尝试这个确实不起作用。需要帮助!

public void setDimension()
{
    GameObject g = Instantiate(dimUiPrefab);
    BoxCollider b = activeFurniture.GetComponent<BoxCollider>();
    Vector2 cameraViewPort = 
    Camera.main.WorldToViewportPoint(activeFurniture.transform.lossyScale);



    g.transform.position = new Vector3(b.transform.position.x/2,b.transform.position.y +2f, b.transform.position.z);
    g.GetComponent<RectTransform>().transform.localScale = cameraViewPort;
}

1 个答案:

答案 0 :(得分:0)

如果您使用的是UGUI,

GameObject g = Instantiate(dimUiPrefab);
RectTransform rectTransform = g.GetComponent<RectTransform>();
// Set size
rectTransform.sizeDelta = new Vector2(width, height);
// Set position
rectTransform.position = new Vector3(posX, posY, posZ);