单方向缩放物体的方法

Unity中物体的缩放功能是整体缩放,想要有单边缩放的效果,需要做一些特殊处理。

1.添加层级

(1)创建一个空的游戏对象并重置位置、比例。

(2)移动要缩放的游戏对象,使空游戏对象的中心位于您要缩放游戏对象的边缘。

(3)将这个游戏对象作为这个空游戏对象的子对象。现在,尝试缩放空的游戏对象,它将在一个方向上缩放。

2.缩放物体的同时进行位移

    float size = 12;//物体实际大小   
    void Update()
    {
        if (Input.GetMouseButtonDown(0))//LeftMouseButton
        {
            IncreaseObjectSize(2f, new Vector3(1f, 0f, 0f));
        }
        else if (Input.GetMouseButtonDown(1))//RightMouseButton
        {
            DecreaseObjectSize(2f, new Vector3(1f, 0f, 0f));
        }
    }
    public void IncreaseObjectSize(float amount, Vector3 direction)
    {
        transform.position += direction * amount / 2 * size; 
        transform.localScale += direction * amount; 
    }
    public void DecreaseObjectSize(float amount, Vector3 direction)
    {
        transform.position -= direction * amount / 2;
        transform.localScale -= direction * amount;
    }

你可能感兴趣的:(Unity大杂烩,unity,游戏引擎)