Урок 2 | Unreal Engine 4 Искусственный интеллект - Навигация ИИ / AI Move To

แชร์
ฝัง
  • เผยแพร่เมื่อ 11 ก.พ. 2025
  • Это 2 урок из серии Искусственный интеллект в игровом движке Unreal Engine.
    В этом уроке мы разберем навигацию для искусственного интеллекта,
    А именно функции Move To для перемещения ИИ ботов по навигационной сетке - NavMesh.
    Мы разберем автоматическое перемещение к указанной точке Target Point.
    Преследование игрока ботом,
    Перемещение ИИ между большим количеством точек -патрулирование,
    Перемещение ИИ между случайными точками,
    RayCasting для искусственного интеллекта.
    Функции AI - Navigation которые мы используем в уроке:
    Simple move to location
    Simple move to actor
    Move to location
    Move to actor
    AI Move To
    Move To Location or Actor
    Get Random Location in Navigable Radius
    Get Random Point in Navigable Radius
    Get Random Reachable Point in Radius
    Разовый донат new.donatepay....
    Patreon - / cyberstars
    Google Play - play.google.co...
    Facebook - www.facebook.c...
    Instagram - www.instagram....
    ВКонтакте - cyberst...

ความคิดเห็น • 125

  • @eddit1086
    @eddit1086 4 ปีที่แล้ว +44

    Сразу лайк!!!
    Ещё и первый)
    Кибер, у тебя один из лучших каналов по UE. Позволь поблагодарить тебя за твой труд!
    P.S. Пожалуй это лучший канал)

  • @renolisa7059
    @renolisa7059 3 ปีที่แล้ว +12

    Второй день смотрю и просто кайфую как все понятно и оформлено! Музыка, голос, изложение. Спасибо!

  • @MrMelsik
    @MrMelsik 4 ปีที่แล้ว +3

    В начале объявлять чему научишь в этом ролике очень удобно, спасибо

  • @resproject1731
    @resproject1731 2 ปีที่แล้ว +7

    Один из лучших каналов на тему UE. Спасибо!

  • @uanbaev
    @uanbaev 4 ปีที่แล้ว +5

    Шикарная серия. Отличный преподавательский поставленный голос приятно сочетается с несомненным профессиональным опытом. Спасибо огромное и продолжайте пожалуйста дальше!

  • @СеверныйШоколад
    @СеверныйШоколад 3 ปีที่แล้ว +2

    я влюблён в эту подачу, это просто лучший канал.

  • @Patallogus666
    @Patallogus666 ปีที่แล้ว +1

    Думаю что это не только лучший русскоязычный материал - но и в принципе один из лучших в мире! =) Автор талантище!

  • @younggd
    @younggd 2 ปีที่แล้ว +1

    Ребята вы лучшие!) Спасибо вам большое, очень помогаете, уроки бесценные просто. Как научусь, а затем выпущу свою игру и заработаю на ней, скину процентик вам, обещаю!)

  • @ForeverNils
    @ForeverNils ปีที่แล้ว

    +100500 очков тебе в карму за то, что всё по делу чётко ясно без воды

  • @deniskian6854
    @deniskian6854 11 หลายเดือนก่อน

    Прекраснейшие уроки, я уже это писал, но напишу еще раз!

  • @cyberstars-entertainment
    @cyberstars-entertainment  4 ปีที่แล้ว +10

    Move To функции можно присоединять и к Begin Play. но тогда при смене точки назначения Move To придется обновлять.
    Разовый донат new.donatepay.ru/@cyberstars
    Patreon - www.patreon.com/cyberstars

  • @9l_Kendr
    @9l_Kendr 4 ปีที่แล้ว +3

    Очень информативные видео,спасибо за уроки по ue

  • @anosan17
    @anosan17 4 ปีที่แล้ว +1

    Спасибо, как в UE4 вырос на твоих видосах.

  • @SenkoBaton489
    @SenkoBaton489 4 ปีที่แล้ว +1

    Хороший урок, я как раз разбирал систему ИИ, с меня лайк, жду следующую видео

  • @angel_klz8990
    @angel_klz8990 2 ปีที่แล้ว +1

    Боже я хочу создать свою игру ты очень помог спасибо огромное за такую точную информацию 🥰

  • @renolisa7059
    @renolisa7059 3 ปีที่แล้ว

    Спасибо огромное! Без воды, все понятно! И главное что и зачем, как работает! Спасибо огромное!

  • @ПереозвучкаМагаГолоса
    @ПереозвучкаМагаГолоса 4 ปีที่แล้ว +1

    Лайк автоматом друг ты крутые уроки делаешь когда 3 урок ,я их сразу скачиваю что бы были вдруг что забуду ))))жду 3 урока

  • @ЯрославСафронов-я2з
    @ЯрославСафронов-я2з 4 ปีที่แล้ว +14

    Клавиша "Э". Отладка ИИ. Позволяет наглядно видеть как строится маршрут от бота до цели.

  • @ILIZIUM
    @ILIZIUM 4 ปีที่แล้ว

    я заждался уже БЛАГОДАРЮ ОТ ДУШИ!

  • @MAYANGIN
    @MAYANGIN 4 ปีที่แล้ว +7

    Инкремент не требует повторной записи. Get actor of class не вешают на event tick. Жду следующих уроков )

  • @shkolakrow
    @shkolakrow 4 ปีที่แล้ว

    Дождались. Новая порция знаний подъехала

  • @valerontaurus
    @valerontaurus 3 ปีที่แล้ว

    Вот смотрю какой урок и отзывы. А отзывы прям положительные. Опять всем все понятно. На самом деле клацаеш быстро, что приходиться часто отматывать назад. А те кто пишут положительные отзывы, попробуйте на следующий день повторить урок самостоятельно. Так уверен, 100% хер у кого что получиться.

  • @arlex62
    @arlex62 2 ปีที่แล้ว

    инкремент и так сохраняет переменную, т.е. не над было после ++ еще сетить переменную (время на ролике 14:44)
    а так автор, продолжай в том же духе, очень круто объясняешь

  • @namename4503
    @namename4503 4 ปีที่แล้ว

    Супер! Хотим следующий урок!

  • @alexandrbrigalda7467
    @alexandrbrigalda7467 4 ปีที่แล้ว

    ты лучший ! главное не останавливайся )))

  • @6404-x1e
    @6404-x1e 3 ปีที่แล้ว

    Спасибо очень хорошо сняты уроки!

  • @kleyman_dev
    @kleyman_dev 3 ปีที่แล้ว

    Спасибо огромное за такие подробные уроки! Держи печеньку🍪

  • @ЯрославСафронов-я2з
    @ЯрославСафронов-я2з 4 ปีที่แล้ว +7

    NavLinkProxy - поможет строить путь для навигации. Например чтобы бот мог спрыгивать с рампы, а не бежать обратно к ступеням.

    • @cyberstars-entertainment
      @cyberstars-entertainment  4 ปีที่แล้ว +5

      Спасибо за полезный коммент
      мы как раз это разберем в следующем уроке

    • @shoguneiraidenbaal359
      @shoguneiraidenbaal359 3 ปีที่แล้ว +1

      Это не везде полезно, иногда лучше чтобы он не спрыгивал !

    • @younggd
      @younggd 2 ปีที่แล้ว +1

      @@shoguneiraidenbaal359 но ведь об этом тоже надо знать))

    • @Louis_Entertainment
      @Louis_Entertainment 11 หลายเดือนก่อน

      А если по сюжету надо?!@@shoguneiraidenbaal359

  • @kraymedia4360
    @kraymedia4360 3 ปีที่แล้ว

    Дякую)Крутий урок)

  • @fidus5016
    @fidus5016 ปีที่แล้ว

    Отличное обьяснение!

  • @Leurdeil
    @Leurdeil 2 ปีที่แล้ว +5

    Что делать если бот бежит к точке, но бежит без анимации? На UE5. Просто стоя "скользит" к точке.

    • @Leurdeil
      @Leurdeil 2 ปีที่แล้ว +10

      Если кто столкнется. У Character (нашего AI персонажа) в дереве компонент есть компонента: Character Movement (CharMoveComp).
      У неё в Details, в разделе Movement, нужно установить в true флажок Use Acceleration fo Paths.

    • @mygalaxy1442
      @mygalaxy1442 2 ปีที่แล้ว +2

      @@Leurdeil Братишка спасибо , от души )

    • @ThewaytoAAA
      @ThewaytoAAA 2 ปีที่แล้ว

      @@mygalaxy1442 лучший из лучших

  • @АлексВескер-м8ж
    @АлексВескер-м8ж 4 ปีที่แล้ว

    Спасибо за урок!

  • @afonya9118
    @afonya9118 2 ปีที่แล้ว +1

    Спасибо за урок Мне кажется тут DoN лишний, код и так вызывается в евент тике, главное следить за индексом точки

  • @bravery_and_stupidity.
    @bravery_and_stupidity. 4 ปีที่แล้ว

    Полезно, мне нравится

  • @superlexadnepr
    @superlexadnepr ปีที่แล้ว

    Пасибо

  • @worldofonline7316
    @worldofonline7316 ปีที่แล้ว

    Коллеги, пробую воспроизвести урок на UE5.1. Бот двигается, но играется IdleAnim вместо анимации движения при MoveToLocation или SimpleMovetoLocation. А если внутри бота применить AddMovementIntput, все нормально играется. Что ему не хватает?

  • @Huns_Kerigan
    @Huns_Kerigan 10 หลายเดือนก่อน

    а почему в некоторых случаях - боты не перемещаются, хотя есть волюм для навигации , и один и тот же класс персонажа - но в одном случае при подключении аи контролера, он перемещается, а в другом случае нет?

  • @MRtheLAGERAT
    @MRtheLAGERAT 4 ปีที่แล้ว

    Спасибо

  • @suslikan___001
    @suslikan___001 8 หลายเดือนก่อน

    пасиб

  • @baletun
    @baletun 3 ปีที่แล้ว

    14:45 необязательно "перезаписывать" полученный результат, инкрементируемое значение сразу присваивается переменной

  • @eldor2532
    @eldor2532 ปีที่แล้ว

    На уровень закидываю NavMeshBoundsVolume и актор с растянутым (на большое расстояние) кубом (поверхностью для передвижения пешек с помощью AI) и
    NavMeshBoundsVolume видит этот куб - ноды типа Move to Location работают корректно.
    Но если я актор с растянутым кубом не закидываю на уровень, а генерирую в процессе, то NavMeshBoundsVolume не видит этот куб и ноды типа Move to Location не работают...
    Как NavMeshBoundsVolume и RecastNavMesh заставить воспринимать заспавненные акторы?
    Дело в том, что я в проекте вместо растянутого куба генерирую процедурную карту и закидывать ее на уровень не вариант, т.к. генерация мира все равно будет после создания самого уровня. Да и создание новых акторов будет работать некорректно...

  • @v1zzle
    @v1zzle 4 ปีที่แล้ว

    с ходу лайк)

  • @CHUVAKRADIST
    @CHUVAKRADIST 3 ปีที่แล้ว +4

    Всё классно, но зачем всё это вешать на EventTick который отрабатывает каждый кадр и 60 раз в секунду заставлять бота искать и перестраивать путь, если весь этот блупринт работает на Event BeginPlay? Вопрос риторический)

    • @АлексНеВажно-х4г
      @АлексНеВажно-х4г 2 ปีที่แล้ว +1

      Так он же один раз срабатывает и всё, а тут он постоянно подаёт импульс

  • @Jack66148
    @Jack66148 2 ปีที่แล้ว

    Скажите пожалуйста а у машины так можно сделать чтобы она сама искала путь и останавливалась в нужной точке я имею ввиду не самому логику блупринтами писать а через готовый блупринт типа АиМувТу? есть ли такие готовые блупринты или это только для кэрэкторов?

    • @cyberstars-entertainment
      @cyberstars-entertainment  2 ปีที่แล้ว

      Для pawn. Павн любой объект которым можно управлят

  • @TheShavoo
    @TheShavoo 4 ปีที่แล้ว

    Это оч важно. Оч мало уроков. Аи мув ту я знаю, а вот бт с атаками и прочие оч тяжело самому вникать

  • @nemonemo6759
    @nemonemo6759 3 ปีที่แล้ว

    thx

  • @ПереозвучкаМагаГолоса
    @ПереозвучкаМагаГолоса 4 ปีที่แล้ว +1

    Друг ты не продаешь уроки допустим мне нужно что то особенное и сколько это стоить будет ,с нпс друзьями связанное

    • @cyberstars-entertainment
      @cyberstars-entertainment  4 ปีที่แล้ว

      Уроки не продаю. Но тем кто поддержывает меня на patreon я помогаю разобраься с личными проблемами в движке. В рамках своей компитенции

  • @mms8181
    @mms8181 26 วันที่ผ่านมา

    прекрасный видео урок!!! Подскажите как сделать так, чтобы NPC ходил по конкретным Terget Point, а не по всем что есть в сцене. Например у меня два NPC и мне нужно чтобы они ходили по своим маршрутам. А сейчас получается, что они ходят по одним и тем же точкам. ЕСть ли кая-то нода в которой прописываешь по каким точкам им двигаться? Спасибо ещё раз!!!

    • @mms8181
      @mms8181 26 วันที่ผ่านมา

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

    • @cyberstars-entertainment
      @cyberstars-entertainment  26 วันที่ผ่านมา

      Можно точкам теги присвоить

    • @mms8181
      @mms8181 15 วันที่ผ่านมา

      @@cyberstars-entertainment на 16:43 вы показываете какие ноды использовать, чтобы персонаж ходил по конкретным точкам (с помощью тегов). Показываете, что нужно использовать Get All Actor With Tag и Actor Has Tag. Скажите, пожалуйста, в какое место блок схемы логики нужно вставлять эти ноды, чтобы всё заработало. Ни как не могу понять(

    • @mms8181
      @mms8181 15 วันที่ผ่านมา

      разобрался, что Get All Actor With Tag ставим вместо Get All Actor Of Class. Скажите, пожалуйста куда вставляется Actor Has Tag в вашу схему. Спасибо!

  • @UnrealSurvival
    @UnrealSurvival 4 ปีที่แล้ว

    Хорошо объясняешь! Инвентарь там вроде тема не раскрыта!

  • @eddit1086
    @eddit1086 3 ปีที่แล้ว

    Добрый день. Большое спасибо за уроки. Не могли бы Вы сказать почему Симпл Мув Ту Актор не срабатывает в режиме Симулейт?

    • @cyberstars-entertainment
      @cyberstars-entertainment  3 ปีที่แล้ว

      скиньте скриншот вашего блупринта,
      можете в наш дискорт, тогда будет ясно в чем проблема

  • @baalbor7050
    @baalbor7050 4 ปีที่แล้ว

    👍👍👍

  • @Lucerbius
    @Lucerbius 3 ปีที่แล้ว

    20:47 - У меня нет функции "GetRangomLocationInNavigableRadius". Как это можно обойти?
    Видео полезное.
    UE 4.18

    • @cyberstars-entertainment
      @cyberstars-entertainment  3 ปีที่แล้ว

      Тогда берите другую подобную функцию. Просто getRandomPoint....

    • @Lucerbius
      @Lucerbius 3 ปีที่แล้ว

      @@cyberstars-entertainment Спасибо получилось.
      22:14 - с функцией GetRangomReachablePointInRadius бот также завис на краю подиума.
      22:01 - Не подскажете, что за мелодия тут играет?

  • @svaretsky
    @svaretsky 2 ปีที่แล้ว

    Уже так устал. Использую пятую версию движка, но везде уроки по четвертой. Ну, ок. Делаю все один в один по первому уроку и все окей, персонаж передвигается. Но как только по второму уроку приказал двигаться ему к точке или другому персонажу (например к его второй копии), то он стоит и не двигается.
    Через Begin Play по урокам иностранного ютубера делал ИИ оленю, чтобы он гулял по травке, убегал от игрока через AI move to, кушал травку, когда голоден, отдыхал, если устал гулять и опять же, все работает, кроме передвижений.

    • @МихаилТищенко-с4ф
      @МихаилТищенко-с4ф 10 หลายเดือนก่อน

      Возможно, у твоего персонажа нет movenment component. Либо используй класс character либо добавь в pawn элемент передвижения. (Не все поддерживают навигационную сетку. Используй FloatingMovenment)

  • @platongorshkov1412
    @platongorshkov1412 ปีที่แล้ว

    Помогите, что делать если случайно удалил place actor, а в window не могу найти

  • @goverbilst252
    @goverbilst252 4 ปีที่แล้ว +1

    Привет. Скажи(те), пожалуйста, в unreal engine добавили ли python??? Где-то такая инфа всплыла, а посмотреть в движке нет возможности. Заранее спасибо)

    • @cyberstars-entertainment
      @cyberstars-entertainment  4 ปีที่แล้ว

      Это не "нативный" язык для ue4 но можно добавить
      docs.unrealengine.com/en-US/ProductionPipelines/ScriptingAndAutomation/Python/index.html

    • @goverbilst252
      @goverbilst252 4 ปีที่แล้ว

      @@cyberstars-entertainment но на нем же можно писать?

    • @1play2fun
      @1play2fun 3 ปีที่แล้ว

      @@goverbilst252 На нем можно писать аддоны для ue4.

  • @fodermoll7128
    @fodermoll7128 3 ปีที่แล้ว

    у меня почему-то боты собираются в одной точке, в центре карты, и не реагируют на Target ptr, в нулевые координаты карты прибегают, независимо от логики

    • @reidek8138
      @reidek8138 3 ปีที่แล้ว

      Либо выбран target light, либо если через тег, то не в том месте указан. Нужно именно в раздел actor, а не tags

  • @Demonichniy-gamer
    @Demonichniy-gamer 3 ปีที่แล้ว +1

    И это посмотрел

  • @truehollow2131
    @truehollow2131 3 ปีที่แล้ว

    Доброго времени суток.
    Насколько я знаю, получение ссылки на объект со сцены через GetAllActorsOfClass является плохой практикой. Есть ли какой-то иной способ получения ссылок на объекты со сцены?

    • @cyberstars-entertainment
      @cyberstars-entertainment  3 ปีที่แล้ว +1

      Можно создать переменую с нужным объектом (ссылкой)

    • @truehollow2131
      @truehollow2131 3 ปีที่แล้ว

      @@cyberstars-entertainment Да, спасибо. Так и сделаю.

  • @ДмитрийОтношенный
    @ДмитрийОтношенный 4 ปีที่แล้ว

    А что за трэк играет 21:00?

  • @МарленАбибулаев-я9ы
    @МарленАбибулаев-я9ы 2 ปีที่แล้ว

    у меня почему то не срабатывает анимация ходьбы у бота

  • @IlyaP-l6k
    @IlyaP-l6k 4 ปีที่แล้ว

    Здравствуйте, cyberstars, не хотите ли создать дискорд сервер по ue4, где народ мог бы делится опытом, и задавать вопросы.

    • @cyberstars-entertainment
      @cyberstars-entertainment  4 ปีที่แล้ว

      Здрасти) Уже есть, так сказать подумал о будущем) Правда он пуст, к тому же у меня нет времени сидеть там и отвечать на вопросы,
      Но если вам это нужно , могу заняться этим , тут главное народ чтоб заходил , в противном случае там будет 2-3 человека которые потом уйдут не получив информации которую искали

    • @IlyaP-l6k
      @IlyaP-l6k 4 ปีที่แล้ว

      @@cyberstars-entertainment, можно ссылочку)) Конечно это очень важно.

    • @cyberstars-entertainment
      @cyberstars-entertainment  4 ปีที่แล้ว

      @@IlyaP-l6k discord.gg/9YMJCKzg

    • @nawradislegend6873
      @nawradislegend6873 4 ปีที่แล้ว

      @@cyberstars-entertainment срок истек

  • @faberlicorders7788
    @faberlicorders7788 2 ปีที่แล้ว

    Автор, как называется программа для создания игр скажи пожалуйста

  • @alexandrgood1634
    @alexandrgood1634 2 ปีที่แล้ว

    Я не понимаю, почему у меня не работает? Помогите пожалуйста

  • @---ep6sm
    @---ep6sm 4 ปีที่แล้ว

    жду срочно урок как заставить бота атаковать игрока рандомными ударами с анимациями

  • @habon5844
    @habon5844 4 ปีที่แล้ว

    Слелай ии которий будет реиагироввть на звуки

  • @actionkey8042
    @actionkey8042 4 ปีที่แล้ว

    Cyberstars - Как создать игру
    ХАХАХАХАХАХ ХАХАХАХАХАХАХАХАА СЛУШАЮ ТВОЙ ВИДОС И ЧЕТО ПОДУМАЛ О РОССИЙКСКИХ ЧИНОВНИКАХ И ТЫ ТУТ ГОВОРИШЬ С 1:12 ДО 1:22 ХАХАХ РЖМ

  • @fedorenkocg
    @fedorenkocg 4 ปีที่แล้ว

    Киборг

  • @Лев-й7я
    @Лев-й7я 7 หลายเดือนก่อน

    А у меня не Do n

  • @SenkoBaton489
    @SenkoBaton489 4 ปีที่แล้ว

    Я 8

  • @Надяпросто-е4с
    @Надяпросто-е4с 3 ปีที่แล้ว +1

    Складывается ощущение, что все тупо посмотрели ролик, не попытавшись повторить, у меня нихера не получилось

    • @cyberstars-entertainment
      @cyberstars-entertainment  3 ปีที่แล้ว

      Провери вашу схему еще раз. Зачастую дьявол кроится в мелочах

    • @fodermoll7128
      @fodermoll7128 3 ปีที่แล้ว

      какая у тебя проблема?

    • @reidek8138
      @reidek8138 3 ปีที่แล้ว +1

      код рабочий, все примеры проверил.

  • @FailValiev
    @FailValiev 4 ปีที่แล้ว

    Уря, очередная доза

  • @НикитаКустовский-н6у
    @НикитаКустовский-н6у 4 ปีที่แล้ว +2

    Как справочник ты неплох, но программист из тебя нулевой! Не знать, что инкремент уже делает set - это просто финиш и стыд.

    • @cyberstars-entertainment
      @cyberstars-entertainment  4 ปีที่แล้ว +10

      Если я ошибся в чем то ,это не значит что я нулевой программист

    • @Лучшийкомментарий-ъ3ч
      @Лучшийкомментарий-ъ3ч 4 ปีที่แล้ว +4

      Еслиб программисты не ошибались то понятие как баг не существовало ,
      где вы видели программу без багов!!? - это всё мелкие недочеты которые со временем фиксят,
      "Сильное заявление" говорить что кто то ноль в программировании и за повторной перезаписи переменной

    • @UnrealSurvival
      @UnrealSurvival 4 ปีที่แล้ว +9

      Давай братан создай свой канал по ue4 и мы посмотрим какой ты программист

    • @максфабрегас
      @максфабрегас ปีที่แล้ว

      @@cyberstars-entertainment Повторил вашу логику и кажется нашел баг. В вашем примере, персонаж движется довольно быстро, а радиус таргет поинта не большой. Поэтому бот успевает быстро выбежать и все работает. Если же он начнет двигаться медленее, то пока он не выйдет из радиуса таргет поинта, он будет продолжать инкрментить ваш индекс таргет поинта. Короче он побежит после этого к 3, а не к 2.

  • @AndriiTurchynRieltorDnipro
    @AndriiTurchynRieltorDnipro ปีที่แล้ว

    спасибо

  • @vachetorosyan7235
    @vachetorosyan7235 2 ปีที่แล้ว

    👌👌