第0073回 / NPCに仕事をさせる | HK-87@UEのブログ

HK-87@UEのブログ

UE4で理想のVRゲームを作るまでの軌跡

さて、日中うろうろしているだけのNPCに仕事をさせたい。

何をさせる?
 -> とりあえず木を伐りに行ってもらう。

各NPCの役割に応じた行動Idを決定
  -> Idに対応したAIを起動するためにはどうしたらいいだろうか?

・・・

どうやら BehaviorTree には、別の BehaviorTree を挿入するための仕組みがあるらしい。


これを使おう。

各IdとBehaviorTreeアセットとの対応を DataTable で定義する。

・・・
時々NPCが移動しないことがあるような・・・?
ナビメッシュは生成できている。

・・・
どうやら ProjectPointToNavigation() に失敗している。
目的地が木の中心座標 = ナビメッシュ外になっているからか。

FNavDataConfig.DefaultQueryExtent の値を使って、近くのナビメッシュを検索しているようだ。
この DefaultQueryExtent はどこから持ってきている?

-> ここからだった。
Project Setting > Engine > Navigation System > Agents > Supported Agents > 0 > Default Query Extent

Supported Agents の定義を追加して、

少し大きめの Default Query Extent の値を設定する。

・・・
できたー。

 

動画