MENU

MoveGameObject_Grid2 の使い方ガイド(Unity PlayMaker)

PlayMakerAction_Grid

概要

Unity PlayMaker用カスタムアクションの紹介です。
このアクションは、指定した方向ベクトルに基づいて、GameObjectを滑らかに移動させるカスタムアクションになります。
昔の“ドラゴンクエスト”“風来のシレン”みたいな移動をイメージして下さい。
斜め移動やグリッド単位の移動にも対応しており、補正の有無を切り替えることも可能です。

私の制作したiOS向けマッチ3ゲーム“PICOLTのプレイヤー移動処理用にグリッド移動のカスタムアクションを作りました。
このアクションは、XYZ軸に対応させたバージョンアップ版になります。


🧩 フィールドの説明

フィールド名説明
GameObject移動させたい対象のGameObjectを指定します。
Move Direction (Vector3)入力方向ベクトル。各軸の値が Direction Threshold を超えると、その軸方向に移動します。例: (1, 0, 1) で右+奥へ移動。
Direction Threshold (Float)入力として有効とみなす最小値(絶対値)。小さな値を無視して、意図しない移動を防ぎます。例:0.5
Move Units (Float)移動距離(ブロック数)。例:1 で1ブロック分移動します。
Move Duration (Float)移動にかける時間(秒)。例:0.2 で0.2秒かけて移動します。
Use Normalized Direction (Bool)ON:方向ベクトルを正規化して距離補正(滑らかな移動)
OFF:補正せず、グリッド単位で移動(例:(1,0,1) → (1,0,1) に移動)
Is Local (Bool)ON:ローカル座標で移動
OFF:ワールド座標で移動
Finish Event移動完了時に送信されるイベント。次のアクションに繋げたいときに使います。

🧪 使用例

例1:右上に1ブロック移動(グリッド単位)

  • Move Direction:(1, 1, 0)
  • Direction Threshold:0.5
  • Move Units:1
  • Use Normalized Direction:OFF

→ 結果:(1, 1, 0) にそのまま1ブロック移動


例2:なめらかに斜め移動(距離補正あり)

  • Move Direction:(1, 1, 0)
  • Direction Threshold:0.5
  • Move Units:1
  • Use Normalized Direction:ON

→ 結果:(0.71, 0.71, 0) に移動(距離は常に1)


💡 ヒント

補正ONはアナログスティックや自由移動向け、補正OFFはグリッドベースのパズルや戦略ゲームに最適
方向入力は、他のFSMや入力アクションから渡すことも可能です(例:Get Axis Vector など)

ダウンロード

Zipファイルに入っているスクリプトをPlayMakerのActionフォルダー内に適当なフォルダーを作って入れてください。
このスクリプトで何か問題があっても責任は取れませんので、ご理解の上で使用願います。
このアクションが気に入ったら、何か私の作ったゲームを買っていただけると助かります!

プログラマーじゃなくてもゲーム作れるよ!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次