Unreal Engine 4
http://uengine.ru/forum/

Behaviour tree мирных персонажей
http://uengine.ru/forum/viewtopic.php?f=3&t=13841
Страница 1 из 2

Автор:  AlNight [ 09 июн 2018, 10:38 ]
Заголовок сообщения:  Behaviour tree мирных персонажей

Всем привет! Недавно начал осваиваться в Unreal engine 4, я просто любитель, экспериментирую в свободное от работы время, но движок очень заинтересовал, и очень сильно помогают в изучении уроки от Flakky! Собственно вопрос по существу-создал проект, импортировал из Blender нарисованные лично объекты, экспортировал из MakeHuman персонажа с анимациями, но возник вопрос с его поведением. Создал поведение Behavior Tree как в уроке, где персонаж бегает по таргетам, но хочу чтобы при достижении таргета проигрывалась анимация, например посадки на стул, нажатия каких-либо кнопок npc`ом, лечь в кровать или работать на компьютере. Перерыл весь русско- и англоязычный интернет, но там только уроки по созданию враждебных противников, которые нападают на игрока, а поведения мирных жителей нет! Может поможет кто советом, как создать такое поведение?

Автор:  Agny [ 09 июн 2018, 13:16 ]
Заголовок сообщения: 

На все возможные случаи ИИ не написать. Какую логику ты сам заложишь своему персу, так он и будет действовать.

Многие далекие от программирования люди иногда почему то думают, что всё там просто. Они думают в движке есть встроенное что то наподобие человекоподобного ИИ. Там кнопочку нажимаешь и твой перс в игре становится такой умный, что программировать ничего не надо, он сам там в игре разберется что делать надо.

Ну такого конечно не бывает. Такое если бы было - это что то на грани фантастики было бы.

По сути чем отличается Behaviour tree вражеских от мирных персонажей. Только тем что первые когда достигают цели атакуют, а вторые выполняют какое то действие. Его тоже нужно также программировать под конкретный случай(смотря что тебе нужно).
Главное вспомнить что не только у Flakky, но и у тебя тоже есть мозги. И всё у тебя получится .

Автор:  AlNight [ 09 июн 2018, 17:51 ]
Заголовок сообщения: 

Ну я не такой уж и далекий, еще мелким на МСке программировал на Басике и Ассемблере! :) Но судьба сложилась так, что моя профессия далека от компьютера, хотя платят неплохо :) Программирование так и осталось просто хобби. А до алгоритма я сам дойду со временем, просто надеялся что более опытные специалисты дадут дельный совет или нужное направление, чтобы упростить задачу :)

Автор:  Snake [ 09 июн 2018, 18:12 ]
Заголовок сообщения: 

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

Автор:  Prytaleks [ 09 июн 2018, 20:54 ]
Заголовок сообщения: 

я лично не разделяю AI от любой остальной логики, все тоже самое, принципы идентичны.

Автор:  AlNight [ 12 июн 2018, 13:50 ]
Заголовок сообщения: 

Ну расскажу тогда предполагаемый алгоритм и возникшие проблемы на пути реализации. Персонаж на данный момент ходит от таргета к таргету, определяя предполагаемую анимацию по тегам таргета. Анимацию хотел реализовать с помощью Matenee, однако оно работает только с отдельным Skeletal mesh, а не с блюпринтом character'а. Сейчас пытаюсь при достижении точки сделать charactera невидимым, и в то же время проиграть анимацию для меша, который только на этот момент появляется, после проигрывания анимации удаляется со сцены. Причем Matenee запускается только с Level blueprint, а не с блюпринта Al. Но чувствую, можно реализовать как-то все проще..

Автор:  Snake [ 12 июн 2018, 17:16 ]
Заголовок сообщения: 

если отказаться от "Анимацию хотел реализовать с помощью Matenee" то все вдруг становится нормально.
ВОпрос перестает касаться АИ и бехавиор три более чем полностью.
Вот с этого тогда и начать.
оно для твоих целей не предназначено. Учить как работают анимации в анриале, и какие способы ее воспроизведения, а не первым подвернувшимся инструментом пользоваться.

Автор:  AlNight [ 12 июн 2018, 17:43 ]
Заголовок сообщения:  Re:

Snake писал(а):
если отказаться от "Анимацию хотел реализовать с помощью Matenee" то все вдруг становится нормально.
ВОпрос перестает касаться АИ и бехавиор три более чем полностью.
Вот с этого тогда и начать.
оно для твоих целей не предназначено. Учить как работают анимации в анриале, и какие способы ее воспроизведения, а не первым подвернувшимся инструментом пользоваться.

Ну тогда хоть дайте направление, какие блупринты и ассеты использовать? Я же только учусь, с Матини уже успел познакомиться, немного осваиваю animation blueprint, но он дает только анимацию без перемещения персонажа, а мне нужно с движением персонажа(например при посадке на стул или чтобы лечь в кровать). Говорить"ты ничего не понимаешь" умеют все, я и не спорю, только недавно начал осваиваться! А вы посоветуйте лучше. Как мне реализовать, в behaviour tree? Там есть Task Play animation, но он у меня почему-то не работает.

Автор:  AlNight [ 12 июн 2018, 18:45 ]
Заголовок сообщения: 

Или сделать реализацию в animation BP, но импортировать туда анимацию со смещением основной кости, чтобы персонаж смещался при анимации от своего orign? Сделать для каждой анимации свой state, и переходить в него из AI блюпринта? Попробую, но будет возня с величиной смещения, чтобы персонаж попал именно в кресло или кровать..

Автор:  Prytaleks [ 12 июн 2018, 19:34 ]
Заголовок сообщения:  Re:

AlNight писал(а):
Или сделать реализацию в animation BP, но импортировать туда анимацию со смещением основной кости, чтобы персонаж смещался при анимации от своего orign? Сделать для каждой анимации свой state, и переходить в него из AI блюпринта? Попробую, но будет возня с величиной смещения, чтобы персонаж попал именно в кресло или кровать..


лучше повторяй уроки(целые серии) 2-3 месяца, будет гораздо больше толка.

Страница 1 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/