ぜひ基礎編を開きながらご覧ください。
お約束 | |
---|---|
この記事作成にあたって使用した(主な)UE4バージョン | 4.26.1 |
このtoolkitのバージョン | v3.0 (live 12.12.20) |
今回はメモ(TIPS)です。
なのでゴールとかは特にありません。
このアセットでは、Grid Managerの「Run Pathfinding」という関数を使って、経路検索をしております。
中身はよくわかりませんが(オイ)。
「現在地」「移動可能コスト」「Pathfindingのタイプ(Simpleなど)」「対象のユニット」を指定して繋いでやれば、
そのターンに移動可能なタイルのindex番号たち と そこまでの移動経路 が保存された"Map"の変数「Path Map」が出力されます。
なので、この「Path Map」からKeysを取り出してやれば、そのターンにそのユニットが移動可能なタイルのindexが一覧で取り出せてしまいます。
Grid Manager以外で使用する場合は、Grid Managerをターゲットにつながないと動きませんので注意してください。
じゃあ、あとはこの移動可能なタイルのIndex一覧の中から、よさげなタイルを選んでAIにぶち込めば勝手に移動するやろと思ったそこのあなた。
移動経路が受け渡しできてないので、ユニットが急にワープします。しかも変なところから。
コンピュータが操作するユニットの移動を司どるのは「BP_Ability」の部分ですが、
この変数「Stored Path Map」がカギとなります。
こいつに、先ほど「Run Pathfinding」で出力されたPaths Map変数をセットしてやれば、うまく動くようになります。
補足
---
BP Ability のイベントグラフ |
Move Target Indexが、移動するタイルのIndex番号となります。当然Pathの中に含まれていないとおかしな挙動になります。
Target Indexが攻撃対象のタイル。攻撃対象がないときは-1にしておかないと変な挙動をします。
Combined Valueは、この値の大小でAIの優先されるアクションが変わるようですが、0なら動きません。動いてほしい場合は0以上にするように設定します。
---
メモ おわり
0 件のコメント:
コメントを投稿