(Unity6_BRP)オブジェクトの大きさを一瞬で変化させる

(スクリプトの作成)

  • 新規にC#スクリプトの作成
  • 名前を「ScaleChange」に変更
  • 下記のコードを書いてチェック
using UnityEngine;

public class ScaleChange : MonoBehaviour
{
    private Vector3 initialScale;

    // Start is called once before the first execution of Update after the MonoBehaviour is created
    void Start()
    {
        initialScale = transform.localScale;
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Z))
        {
            transform.localScale = initialScale * 2;
        }
    }
}

(スクリプトの実行)

  • スクリプトを大きさを変化させたいオブジェクト(自由)に追加
  • ゲームを再生
  • Zボタンを押した瞬間に、オブジェクトの大きさが変化すれば成功です。


(コードの改良)

  • 「初期の大きさ」に戻すコードの追加
using UnityEngine;

public class ScaleChange : MonoBehaviour
{
    private Vector3 initialScale;

    // Start is called once before the first execution of Update after the MonoBehaviour is created
    void Start()
    {
        initialScale = transform.localScale;
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Z))
        {
            transform.localScale = initialScale * 2;
        }

        // ★追加(初期の大きさに戻す)
        if (Input.GetKeyDown(KeyCode.X))
        {
            transform.localScale = initialScale;
        }
    }
}

(実行確認)

  • ゲームを再生
  • Zボタンを押して大きくなる。
  • その後、Xボタンを押して初期の大きさに戻れば成功です。