【Unity】VisualScriptingチュートリアル2

概要

以前の記事の続きです

toshizabeth.hatenablog.com

「Xが4移動したらCubeが動かなる」という実装をしてみたいと思います

実装

  1. ScriptGraphをダブルクリップして開く
  2. AddNodeから GetLocalPosition, If, LessOrEqual を配置
  3. GetLocalPositionから GetX を配置して LessOrEqual と結びつける
  4. LessOrEqualに4を入れる
  5. 各ユニットを結びつける

(途中からの動画ですが)

f:id:toshizabeth:20210919123335g:plain

各種ユニットの役目ですが

  • GetLocalPosition

CubeのLocalPositionを取得するユニット

  • LessOrEqual

Aの入力がBの値以下の場合 trueを返す


つまり、CubeのLocalPositionが4以上になったら If ユニットが false を返すようになるので Translate が働かなくなる

ということになります。


クライアントコードで書くと

void Update()
{
    var pos = cube.transform.GetLocalPosition();
    if (pos.x <= 4)
    {
        // 0.01動かす
    }
}

ということをやっているわけです

この記述は、「4動かしたら止まる」ではなく「4まで動かす」ですね(結果は同じですが)

f:id:toshizabeth:20210919123834g:plain


以上あっさりとしたものになりますが、これだけでも掴めるものがあると思います