ビヘイビアツリーの背後にある概念と、従来のビヘイビアツリーとの違いについて説明します。作成するには、さまざまな方法があります。使用すると、キャラクターに対して、アニメーションの再生、特定の位置への移動、何かにヒットしたときの反応などの「アクション」をするように指示することができます。キャラクターがプレーヤーを巡回するか追跡するかを切り替えるビヘイビアツリーの例を示します。グラフに追加および接続することによって、ブループリントと同様の視覚的な方法で作成されます。(以下の図では、ビヘイビアツリーにブラックボードが割り当てられています。ビヘイビアツリーは、ロジックを左から右、そして上から下に実行します。操作の数値順は、グラフに配置されたノードの右上隅に表示されます。「条件式」と表示されます)。真か否かの検証に使用されます。これにより、残りのブランチを実行できるかどうかが決まります。実行できるアクションです。Guide」を参照してください。ビヘイビアツリーとロジックを作成したら、ゲーム中にビヘイビアツリーを実行する必要があります。制御や指示に使用されます。クラスを割り当てます。「占有」を取得すると、ビヘイビアツリーが実行されます。追加する必要があります。Start」を参照してください。ビヘイビアツリーの違いについて説明します。ビヘイビアツリーは、フレームごとに不要な作業を行わないようにイベント駆動型であることです。ビヘイビアツリーは、関連付けられた変更が発生したかどうかを常にチェックする代わりに、ツリー内の変更をトリガーするために使用できる「イベント」を受動的にリッスンします。「HasLineOfSight?」を更新しています。これにより、優先順位の高い左端のブランチを実行するために、優先順位の低いタスクが中止されます。画像をクリックしてフルサイズで表示イベント駆動のアーキテクチャーを持つことで、パフォーマンスとデバッグの両方が改善されます。ビヘイビアツリーとのその他の違いを理解し、ビヘイビアツリーを適切に構成する必要があります。ティックごとに繰り返す必要がないため、パフォーマンスは大幅に向上します。概念的には、常に「もういますか?」と尋ねるのではなく、「もういます!」と言われるまでただ休んでいるようなものです。動作を視覚的にデバッグするためにビヘイビアツリーの実行履歴を前後に移動する場合は、履歴に関連する変更を表示して無関係な変更は表示しないようにすることをお勧めします。イベント駆動の実装では、最初から追加のイテレーションの必要がないため、ツリーに対してイテレーションをして以前と同じ動作を選択した無関係なステップを除外する必要はありません。代わりに、ツリー内の実行位置またはブラックボード値への変更のみが重要であり、表示されるのはそれらの違いです。ノードであり、成功または失敗を返す以外の処理は行いません。従来の条件式のタスクは正常に実行できますが、条件式用にはデコレーターを使用することを強くお勧めします。条件式をタスクではなくデコレーターで作成すると、かなり有利な点がいくつかあります。直感的で見やすくなります。タスクであるため、ツリーによって実際のアクションがどのような順序付けられているかを簡単に確認できます。条件は、制御しているサブツリーのルートにあるため、条件が一致しない場合は、ツリーのどの部分が「遮断されている」のかすぐに確認できます。タスクであるため、アクションの内容を簡単に確認できます。従来のモデルの場合、条件式がリーフの中にあるので、条件式のリーフとアクションのリーフを見分けるための時間が長くかかってしまいます。ノードの子ノードの実行を妨げることができます。オブザーバーとして機能させることが簡単な点です。この機能は、ツリーのイベント駆動型の特性を最大限に活用するために重要です。ノードはそのすべての子に対して同時に実行を開始します。(必要なビヘイビアに応じて)。ある必要はありません。概念的には、これらは複数のタスクを一度に実行するための手段にすぎません。多くの場合、それらは同じスレッド上で実行され、あるシーケンスで開始する場合も多いです。このシーケンスはすべて同じフレーム内で発生するため無関係であるはずですが、重要な場合もあります。プロパティを使用することで、同じようなビヘイビアを実現しています。つの子ノードのみを持つことができます。完全なサブツリーです。もするノード」と考えてみてください。「敵を攻撃しながら、敵に向かって前進する」という状況です。完了を待機している間のセカンダリ、あるいはフィラータスクです。ノードに比べて概念的には、比較的単純です。ノードが提供する一般的な使用法のほとんどをサポートしています。ノードでは、最適化がはるかに複雑になります。関連付けられた特別なノードであり、指定した秒数毎にコールバックを登録し、定期的に発生する必要のある様々な種類の更新を実行することができます。追跡するのに最適な敵を判断できます。ノードのサブツリーに実行中のツリーが残っている限り、サービスはアクティブのままです。常に条件をチェックし、タスクが必要とする条件が偽になった場合にタスクを中断できるようにすることです。「Hiss」や「Pounce」などのシーケンスを実行する猫がいる場合、マウスが穴の中に逃げ込んだらすぐに諦めるという処理を実行できます。ノードを使うと、マウスに飛びかかることができるかどうかを子ノードが確認し、別の子ノードがシーケンスを実行します。ビヘイビアツリーは、イベント駆動型であるため、条件式デコレーターに値を監視させて、必要に応じて中断します。デコレーターがあるだけです。ノードを使用すると、わかりやすくシンプルなツリーが作成されます。グラフが明確になると、デバッグが簡単になります。同時実行パスが少ないほど、何が実行されているかがわかりやすくなります。イベント駆動型のグラフは、同時に多数のサブツリーが実行されていなければ、最適化が簡単です。ドキュメントサイトへようこそ!あなたの声を私たちに伝えるフィードバックシステムを含め、様々な新機能について開発をおこなっています。広く使える状態にはなっていないので、準備ができるまでは、ドキュメントフィードバックフォーラムで、このページについて、もしくは遭遇した問題について教えていただけると助かります。新しいシステムが稼働した際にお知らせします。