Давно работаю с ИИ в Анриале. По правде сказать, инструмент Behavior Tree какой-то слишком неудобный и бесполезный, хотя и не выглядит таковым на первой взгляд. Ещё и дерево выполняется последовательно и, как правило, каждый кадр с проверками…
Несколько раз пытался все же попробовать его, мол вдруг я не прав и на самом деле инструмент хороший, но сколько раз не пытался на нем писать хоть немного сложный ИИ, выходило либо костыльно, неудобно и в некоторых местах вообще без возможности что-либо реализовать. И это несмотря на то, что с инструментом хорошо знаком.

Уже два года пишу все ИИ либо на плюсах, либо на блупринтах, о BT даже не думаю, так как разработал свой паттерн. Удобный, гибкий, расширяемый.

Для тех, кому интересно, создаю компоненты, которые отвечают за определенную логику (преследование, бой, убегание, патрулирование, укрытия и так. далее). Контроллер в свою очередь привязывается в нужным событиям и переключает работу компонентов. Кстати можете увидеть примерную реализацию у меня в стримах по созданию выживалки (у меня в аккаунте можно найти статью).

В целом компоненты можно заменить поддеревьями, однако там проблема в том, что не так просто перескочить с ветки на ветку, а так же и слушать одной веткой совершенно другую диспатчером. Таких проблем ещё не мало, которые придется решать какими-то выкрутасами. Поэтому вообще не вижу смысла париться и юзать Behavior Tree
Только полноправные пользователи могут оставлять комментарии.
Войдите, пожалуйста.