パープルハット

※当サイトではGoogleアドセンス広告を利用しています

【Unity】Visual Scriptingでキーボード入力



目標

  • キーボードから入力を受け取り、左右矢印でオブジェクトを動かせるようにします。
  • 今回は、以下のスクリプトと同様の動作をさせるようにします。
using UnityEngine;

public class test : MonoBehaviour
{
    //移動速度(1秒で2だけ動く)
    float Speed()
    {
        return 2 * Time.deltaTime;
    }

    void Update()
    {
        //右矢印を押したら右方向に動く
        if (Input.GetKey(KeyCode.RightArrow))
        {
            transform.Translate(Vector3.right * Speed(), Space.World);
        }
        //左矢印を押したら左方向に動く
        else if (Input.GetKey(KeyCode.LeftArrow))
        {
            transform.Translate(Vector3.left * Speed(), Space.World);
        }
    }
}





完成例

  • 以下のような「Script Graph」により実現できます。

完成例



解説

全体

全体解説


入力を受け取る

入力を受け取る機構

(1)
  • 関数Input.GetKey()に相当。
  • Keyに指定したRight Arrow(右矢印)の入力の有無を判定。
(2)
  • if文がtrueの時の処理、つまり右矢印が入力されている間に行う処理。
(3)
  • 右矢印が入力されていないときの処理。



Time.deltaTimeを取得

Time.deltaTime


乗算

Multiply




実行結果

実行結果