UE4 ナビゲーションメッシュ(Nav Mesh)を使わない簡単な直線移動を実装する(Move To Location or Actor、Move To Location、Move To Actor)
AIでの簡単な直線移動を実装する方法です。
今回の方法ではナビゲーションメッシュ(Nav Mesh)を使わないで移動しています。
こちらを参考にさせていただきました。
・[UE4] ランダムに移動するキャラクターを簡単に実装する方法
http://historia.co.jp/archives/7101/
直線で移動させるために今回は
「Move To Location or Actor」ノードを使いました。

「Goal Location」に目標位置を指定します(アクターの場合はGoal Actorに指定します)
ナビメッシュを使わないので「Use Pathfinding」のチェックを外します(後述)
他の細かいパラメータの部分はちょっと割愛します。
公式ドキュメントはこちら。
・Move To Location or Actor
https://api.unrealengine.com/INT/BlueprintAPI/AI/Tasks/MoveToLocationorActor/index.html
ノードの細かい説明はこちらが参考になると思います。
・UE4 AIで使う移動と停止のまとめ
http://unrealengine.hatenablog.com/entry/2017/06/14/005914
あとはこんな感じでヒストリアさんのサイトを参考にBPを組みます。
ランダムな位置を取得するための範囲を配置したり。

その範囲内の位置を取得する関数を作成したり。

あとは「Move To Location or Actor」ノードを使って
取得したランダムな位置に移動するようにしてみました。

これの結果がこんな感じに。
それっぽく動きました!
「Move To Location or Actor」ノード以外にも
「Move To Location」ノードや

・Move to Location
http://api.unrealengine.com/INT/BlueprintAPI/AI/Navigation/MovetoLocation/index.html
「Move To Actor」ノードというものもあります。

・Move to Actor
http://api.unrealengine.com/INT/BlueprintAPI/AI/Navigation/MovetoActor/index.html
特に問題がなければ「Move To Location or Actor」ノードを使えばいいみたいですね。
AIの移動系ノードは別途どこかでまとめようと思います。
今回の方法ではナビゲーションメッシュ(Nav Mesh)を使わないで移動しています。
こちらを参考にさせていただきました。
・[UE4] ランダムに移動するキャラクターを簡単に実装する方法
http://historia.co.jp/archives/7101/
直線で移動させるために今回は
「Move To Location or Actor」ノードを使いました。

「Goal Location」に目標位置を指定します(アクターの場合はGoal Actorに指定します)
ナビメッシュを使わないので「Use Pathfinding」のチェックを外します(後述)
他の細かいパラメータの部分はちょっと割愛します。
公式ドキュメントはこちら。
・Move To Location or Actor
https://api.unrealengine.com/INT/BlueprintAPI/AI/Tasks/MoveToLocationorActor/index.html
ノードの細かい説明はこちらが参考になると思います。
・UE4 AIで使う移動と停止のまとめ
http://unrealengine.hatenablog.com/entry/2017/06/14/005914
ということで今回は「Use Pathfinding」のチェックを外しました。到達半径の設定や他にも色々と設定可能ですが、最大の特徴は"Use Pathfinding"のチェックを外すと、なんとナビゲーションメッシュがなくても移動を開始します。
あとはこんな感じでヒストリアさんのサイトを参考にBPを組みます。
ランダムな位置を取得するための範囲を配置したり。

その範囲内の位置を取得する関数を作成したり。

あとは「Move To Location or Actor」ノードを使って
取得したランダムな位置に移動するようにしてみました。

これの結果がこんな感じに。
というわけでヒストリアさんのサイトをみながらAIキャラクターをとりあえず動かすところまで!https://t.co/b9sqGg9yGQ
— 凛@PS4版配信中&スイッチ版開発中! (@kagring) 2018年4月30日
それっぽく動きました!
「Move To Location or Actor」ノード以外にも
「Move To Location」ノードや

・Move to Location
http://api.unrealengine.com/INT/BlueprintAPI/AI/Navigation/MovetoLocation/index.html
「Move To Actor」ノードというものもあります。

・Move to Actor
http://api.unrealengine.com/INT/BlueprintAPI/AI/Navigation/MovetoActor/index.html
ということみたいなのでMove To系でありながら、これまで紹介してきた全てのMove Toノードの機能を内包しているのがこの"Move To Location or Actor"です。
特に問題がなければ「Move To Location or Actor」ノードを使えばいいみたいですね。
AIの移動系ノードは別途どこかでまとめようと思います。
| UE4 | 12:53 | comments:0 | trackbacks:0 | TOP↑