unity3d縮放物體

西北逍遥發表於2024-07-20

unity3d縮放物體

using UnityEngine;

public class ScaleObject : MonoBehaviour
{
    // 縮放速度,可以根據需要調整
    public float scaleSpeed = 0.1f;

    // 控制縮放的方向,這裡以X軸為例
    public bool scaleX = true;
    public bool scaleY = false;
    public bool scaleZ = false;

    void Update()
    {
        // 檢查是否需要縮放
        if (scaleX)
        {
            // 在X軸上縮放物體
            transform.localScale += new Vector3(scaleSpeed * Time.deltaTime, 0, 0);
        }

        if (scaleY)
        {
            // 在Y軸上縮放物體
            transform.localScale += new Vector3(0, scaleSpeed * Time.deltaTime, 0);
        }

        if (scaleZ)
        {
            // 在Z軸上縮放物體
            transform.localScale += new Vector3(0, 0, scaleSpeed * Time.deltaTime);
        }

        // 這裡可以新增邏輯來限制縮放的最小或最大值
        // 例如,防止物體在X軸上縮放到小於0.1
        if (transform.localScale.x < 0.1f && scaleX)
        {
            transform.localScale = new Vector3(0.1f, transform.localScale.y, transform.localScale.z);
            scaleX = false; // 可選:停止在X軸上的進一步縮放
        }
    }
}

################################

相關文章