私は任意の言語でビヘイビア ツリーの実装を探しています。それらがどのように実装され使用されているかについて詳しく知りたいので、自分でロール バックできますが、残念ながらOwylを 1 つしか見つけることができませんでした。使用方法の例は含まれていません。
コードを閲覧できる他のオープンソースのものを知っている人は、それらがどのように使用されているかなどのいくつかの例を参照してください?
EDIT:ビヘイビアツリーはデータ構造の名前です。
私は任意の言語でビヘイビア ツリーの実装を探しています。それらがどのように実装され使用されているかについて詳しく知りたいので、自分でロール バックできますが、残念ながらOwylを 1 つしか見つけることができませんでした。使用方法の例は含まれていません。
コードを閲覧できる他のオープンソースのものを知っている人は、それらがどのように使用されているかなどのいくつかの例を参照してください?
EDIT:ビヘイビアツリーはデータ構造の名前です。
ここに私が見つけたいくつかがあります:
GameDevに関するこの Qも参考になるでしょう。
https://skill.codeplex.com/をご覧ください。これは Unity 用の BehaviorTree コード ジェネレーターです。ソース コードをダウンロードして、それが役立つかどうかを確認できます。
私はC++で独自の動作ツリーの実装を行い、ProtothreadsLibraryの変更されたコードを使用しました。Cのコルーチンも良い読み物です。これを使用すると、複数のスレッドを使用せずに複数の動作を同時に実行できるコルーチンシステムを実装できます。基本的に、各ツリーノードには独自のコルーチンがあります。
私があなたを正しく理解しているかどうかはわかりませんが、ツリーを実装するには、F# や Haskell などの正式な言語を使用することをお勧めします。Haskell を使用すると、柔軟で高速なツリー構造を使用できます。F# を使用すると、oo Code でツリー構造を解析および処理するためのマルチパラダイム言語が得られます。
お役に立てば幸いです。
YVision フレームワークの .NET に実装されたビヘイビア ツリーを見つけることができます。これらは、Natural User Interface (NUI) アプリケーションの開発に特に適していることがわかりました。オープンソースではありませんが、無料で使用できます。チュートリアルで実装方法に関する情報を見つけることができます: http://www.yvision.com/support/tutorials/
編集: AI 以外にもビヘイビア ツリーを使用していることを付け加えておきます。ゲーム ループ内のサブシステムの同期も、それらによって定義されます。ケースページをチェックして、ロボティクス、カメラベースのインタラクション、拡張現実など、私たちが使用しているさまざまなアプリケーションを見つけてください。フレームワークをダウンロードし、サンプルを試して、実装に関するフィードバックをお寄せください。
https://github.com/TencentOpen/behaviacは本当に優れたものです。
behaviac は、ビヘイビア ツリー、有限状態マシン、および階層型タスク ネットワークをサポートしています。ビヘイビアーは、デザイナーで設計してデバッグし、ゲームでエクスポートして実行できます。
C++ バージョンは、クライアント側とサーバー側に適しています。
そして、それはオープンソースです!