2010-06-02 2 views
3

Я ищу behavior tree реализации на любом языке, я хотел бы узнать больше о том, как они реализованы и используются, поэтому я могу найти собственный, но я могу найти только один Owyl, к сожалению, он не содержит примеров как он используется.Реализация дерева поведения

Кто-нибудь знает какие-либо другие версии с открытым исходным кодом, которые я могу просмотреть в коде, см. Примеры того, как они используются и т. Д.?

EDIT: Дерево поведения - это название структуры данных.

+0

Дерево поведения - это структура данных, используемая в AI. –

+0

А, я вижу! Спасибо за разъяснения. –

ответ

1

Я не знаю, что я понимаю вас правильно, но я думаю, что для реализации дерева лучше использовать официальный язык, такой как F # или Haskell. С помощью Haskell вы можете использовать гибкие и быстрые древовидные структуры, а с F # у вас есть многопартийный язык для анализа и обработки древовидных структур в коде кода.

Я надеюсь, что это поможет вам.

+0

Что такое официальный язык? –

+0

посмотреть @ http://en.wikipedia.org/wiki/Noam_Chomsky и http://en.wikipedia.org/wiki/Formal_language – kockiren

2

Я сделал свою собственную реализацию дерева поведения в C++ и использовал некоторые модифицированные коды из Protothreads Library. Coroutines in C также хорошо читается. Используя это, можно реализовать систему сопрограмм, которая позволяет одновременно запускать несколько действий без использования нескольких потоков. В основном каждый узел дерева имеет свою собственную сопрограмму.

0

В структуре YVision вы можете найти деревья поведения, реализованные в .NET. Мы обнаружили, что они особенно подходят для разработки приложений Natural User Interface (NUI). Это не с открытым исходным кодом, но это свободно использовать, и вы можете найти информацию о том, как мы реализовали их в учебные пособия: http://www.yvision.com/support/tutorials/

EDIT: Позвольте мне добавить, что мы используем поведение деревьев для намного больше, чем просто ИИ. Даже синхронизация подсистемы в игровом цикле определяется ими. Проверьте cases page, чтобы найти спектр приложений, которые мы ими используем: робототехника, взаимодействие с камерой, расширенная реальность и т. Д. Загрузите фреймворк, попробуйте образцы и, пожалуйста, сообщите нам о нашей реализации.

5
+1

Clojure - http://github.com/nakkaya/alter-ego –

+0

Javascript : https://github.com/6RiverSystems/blueshell – JBCP

3

Взгляните на https://skill.codeplex.com/. это генератор кода BehaviorTree для единства. вы можете скачать исходный код и посмотреть, полезно ли это.

0

https://github.com/TencentOpen/behaviac действительно отличный.

behaviac поддерживает дерево поведения, конечный автомат и иерархическую сеть задач. Поведение может быть спроектировано и отлажено в дизайнере, экспортировано и выполнено в игре.

Версия C++ подходит для клиентской и серверной сторон.

и, он открыт!

Смежные вопросы