← 一覧に戻る
議論 フォーラム

GDevelopで敵キャラのプラットフォーム巡回AIを実装

GDevelopコミュニティのフォーラムにて、プラットフォームゲームにおける敵キャラクターの巡回AIの実装方法についての質問が共有されました。質問者は、敵キャラクターがプラットフォームの端(壁なし)で左右に往復移動し、かつ地面から落ちないようにしたいと考えています。

実装の試みでは、Raycastビヘイビアを利用したものの、左端を通過する際に敵が落下してしまったり、右端で非常に速く(jittering)往復移動してしまうといった問題が発生しているとのことです。

敵キャラがプラットフォームを巡回している様子
敵キャラがプラットフォームを巡回している様子

この問題に対し、フォーラムの参加者からはRaycastの角度や距離の設定、あるいは状態管理(例:左右どちらを向いているか、移動中か待機中か)をイベントで細かく制御するアプローチが提案される可能性があります。

具体的には、以下のような点が議論のポイントとなるでしょう。

  • Raycastの設定: 敵の進行方向と地面との間にRaycastを照射し、地面の有無を判定します。このRaycastの角度や、敵の足元からの距離を適切に設定することが重要です。
  • エッジ検知: プラットフォームの端(特に落下する可能性のある場所)をどのように検知するかが鍵となります。Raycastが一定距離以上、地面に当たらなかった場合に、反転や停止のロジックを組み込むことが考えられます。
  • 状態管理: 敵が「左へ移動中」「右へ移動中」「停止中」といった状態を持つようにイベントを構成することで、予期せぬ挙動を防ぐことができます。
  • 速度調整: 往復移動が速すぎる(jittering)問題は、移動速度や反転までの間隔の調整で解決できる場合があります。

このフォーラムでの議論は、GDevelopでAIキャラクターの移動ロジックを構築する際によく直面する課題とその解決策を探る上で、非常に参考になる情報源となっています。

元の情報源を見る →