UE4 Бесшовная анимация персонажа. ч.1. Плавный ход и поворот персонажа.

Поделиться
HTML-код
  • Опубликовано: 20 окт 2024

Комментарии • 50

  • @EgorovDA
    @EgorovDA 5 месяцев назад +1

    Отличный урок, спасибо!
    Сразу просто взял и в одном видео ответил на все мои вопросы относительно настройки персонажа и камеры )))
    Для комментаторов про костыли: если есть нативные способы делать что-то, что автор сделал - прошу, поделитесь.
    Я не для разведения дискуссий, а в практических целях.

  • @Зелимханв3Д
    @Зелимханв3Д 4 года назад +4

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

  • @MrZaziik
    @MrZaziik 3 года назад +7

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

  • @IvlenovAnton
    @IvlenovAnton 4 года назад +2

    Добротный материал, было интересно, спасибо.
    Добавлю, что вместо break и make можно по выходным и входным параметрам всяких get Rotator кликать правой клавишей и выбирать Split... Экономит место на экране от дополнительных блоков, работает со всеми структурами.
    Создавать простые анимации поворота можно прямо а анриле, сдублировав реф анимацию, обрезав её до одного кадра и повернув нужные кости прямо в окне просмотра анимации (если вдруг нет графического пакета под рукой).
    Так же вместо aim offset можно напрямую добавлять поворот к нужным костям в самом анимационном блюпринте через bone transform кажется, переведя перед этим позу в локальные координаты через pose to local transform и потом обратно. Это удобнее, если повернуть надо всего одну кость, или хочется передавать какие-то сложные хитрые значения, которых заранее не предугадать при анимировании.
    У меня всё )

    • @kelltechkirov8884
      @kelltechkirov8884  4 года назад +1

      Про сплит знаю, но так привычнее.
      Про присвоение угла сразу кости тоже, но моя задача тут была именно офсет показать.
      Да и удобнее офсетом... привычнее...
      А на счет редактирования прямо в движке, мой ue4.20 регулярно при этом крашится. И вот зх почему. А обновиться все руки не доходят.

  • @threeworlds4114
    @threeworlds4114 3 года назад

    Великолепный урок. Лайк и Подписка! Благодарю. Всего то пол часа урок, а в свой проэкт его больше дня интегрировал и то.. еще осталось Вашу систему наклона торса както использовать для стрельбы из лука и арбалета от третьего и первого лица. Удачи Вам.

  • @Walery1983
    @Walery1983 Год назад

    Офигеть. Спасибо огромное, именно то что искал.

  • @kazuma_senpai7087
    @kazuma_senpai7087 2 года назад

    Код конечно весь на полную переработку но как начало для изучения идеально!

  • @NCSThePunisher
    @NCSThePunisher 4 года назад

    Круто! я вот тоже думаю начать записывать видео уроки о наболевших темах, в моём случае это WASD + Mouse TopDown. Что самое интересное реализация данного управления всегда разная, в зависимости от того для какой цели делать, в моём случае все старания для Multiplayer но всё равно косячки имеются, ну а если для сингла то идеальное безотказное решение получается)

  • @EternalTTV
    @EternalTTV 2 года назад +1

    лайк за костыль в руках)

  • @Vilmind
    @Vilmind 9 месяцев назад

    Реально круто.

  • @Сма_йлик
    @Сма_йлик 3 года назад +1

    👍👏👍👏👍👏👍👏

  • @MikheevAndrey
    @MikheevAndrey 4 года назад +1

    Спасибо, всё понятно!

  • @SamallSamallla
    @SamallSamallla 4 года назад +3

    Буду рад, если найдете время на урок по теме: "плавная смена камер от 1 лица к 3 и наоборот"

  • @ijerofei
    @ijerofei 3 года назад

    Класс! То что надо!

  • @sergey8229
    @sergey8229 2 года назад

    посмотрел, круто, начал повторять не работает, до 5 минуты сделал так же, 30 минут потратил на разбор каждой секунды чтобы найти ошибку у себя, не помогло, камера работает как надо, но затем перс бегает как при играх вид сверху, п.с. начал по другому, ограничение камеры без функции сделал так создал Blueprint PlayerCameraManager внутри настройки для камеры, добавил камеру менеджер в плеер контролере

  • @EspadaGames
    @EspadaGames 2 года назад

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

  • @kostyayaskevich6920
    @kostyayaskevich6920 2 года назад

    Здравствуйте, вы в начале видео говорили про уроки Навожилова. Подскажите пожалуйста, где бы мне их посмотреть, для углубления в тему, так сказать. Сам сейчас решаю проблему "бега назад", а у вас что то около того что мне нужно. Мне поиск по фамилии конкретного чего то не выдал на ютюбе.

    • @kelltechkirov8884
      @kelltechkirov8884  2 года назад +1

      Иван Новожилов
      ruclips.net/channel/UC2iKJPXiC7vFyBsynfd_XNg

  • @winsoartic2942
    @winsoartic2942 4 года назад +2

    Летающие костыли Хммм...)))

  • @RasFace
    @RasFace 2 года назад

    Конечно поздно, но у меня вопросик:
    Может я что-то где-то пропустил, но я не понял, как на 25:35 вы подключили idle анимацию в середину оффсета? Без addetive туда не подключается, но это базовая анимация.
    (Извиняюсь за тавтологию)

    • @kelltechkirov8884
      @kelltechkirov8884  2 года назад

      Там 2 идл анимации. Одна референсная, вторая(её копия) аддативная. В теории можно было и без неё, но с ней стабильнее.

  • @Зелимханв3Д
    @Зелимханв3Д 4 года назад

    Полезно

  • @briabeegost
    @briabeegost 3 года назад

    Вы просто бог, спасибо. Но у меня один вопрос...
    26:14 - что же вы в Alpha подключили?

    • @kelltechkirov8884
      @kelltechkirov8884  3 года назад

      О! А это я как раз таки и прошляпил...
      Там просто.
      Взял две переменные SpeedX и SpeedY и через Make vector объединил их после от полученного вектора взял Vector Lenght XY а от него map range Clamped с параметрами от0 к 1 и от 1 к 0.
      суть тут проста, если скорость не равна нулю, то и воспроизводить анимацию перебирания ногами не нужно, следовательно мы плавно задавливаем её через альфу.

    • @briabeegost
      @briabeegost 3 года назад

      @@kelltechkirov8884 спасибо!

  • @Spe3dUP
    @Spe3dUP 3 года назад

    Вроде все так же сделал, но поворот на месте не выходит, пока происходит поворот анимация проигрывается несколько раз ( С уменьшением значения угла) и песронаж словно буксует, к концу поворота угол принимает значение либо 8 либо -8 ( Зависит от стороны поворота) и анимация зацикливается с соответствующими значениями ( персонаж топчется на месте), В чем может быть проблема?

    • @kelltechkirov8884
      @kelltechkirov8884  3 года назад

      Хмм... угол принимает значение +/- 8? Y из CameraVector? Этот угол существует в диапазоне +/- 1 и умножается на макс.угол анимации. У меня это 45 градусов. т.е. в аним бленд уходят значения от -45 до 45 градусов. У вас где то ошибка в математической части.

  • @ЯщикПочтовый-з7ф
    @ЯщикПочтовый-з7ф 3 года назад

    Спасибо за урок!
    Молю о пощаде, пол дня ломаю голову.
    Хотел по аналогии со спринтом, сделать на CTRL шаг.
    Столкнулся с проблемой, что отжатая кнопка так же учитывается для инициализации функции, даже если не нажималась ранее. От того интерполяция при спринте одновременно стремиться к 750 и к 300, а при шаге, одновременно стремится к 150 и 300. 300- это дефолтное значение модулей select.
    Как можно обойти данную ситуацию?

    • @kelltechkirov8884
      @kelltechkirov8884  3 года назад +1

      Ну, можно сделать булевую переменную а-ля is_walking.
      Логика такова - если мы идём шагом -> то мы не можем спринтовать.
      И через бранч блочим кнопку спринта, если идём шагом.
      Блочим шаг, если уже спринтуем.
      В селекте скорости на минимальную скорость вешаем ещё один селект со значениями между шагом и обычным бегом.
      Ну или сделат энум с вариантами движения. С ним селект имеет неограниченное число вариантов.

    • @ЯщикПочтовый-з7ф
      @ЯщикПочтовый-з7ф 3 года назад

      @@kelltechkirov8884 Спасибо за быстрый ответ! Думал о булевых, но костылями чуть отдает, искал в интернете более элегантное решение, думал вдруг есть секретный блупринт модуль, о котором не знаю. Пока ничего не нашел.

    • @ЯщикПочтовый-з7ф
      @ЯщикПочтовый-з7ф 3 года назад

      disk.yandex.ru/i/tn4f6Co2S-c2qQ
      Вот такой вариант еще сочинил, объединить в одну функцию шаг, спринт и шаг назад(CTRL,Shift,S соответственно)
      А после складывать все значения и передавать в интерпту, всегда получается [значение]+ноль+ноль, либо ноль+[значение]+ноль, либо ноль+ноль+[значение].
      Но при таком способе все рушиться, если одновременно зажать Shift и Ctrl или S или все вместе. А так же придется отдельно как-то еще шаг интерполяции прописывать для каждого из условий.
      Нет ли какого то способа, чтобы собрать массив из инпутов - условный array[Shift Ctrl S] и запрещать нажимать другие, если зажата один из массива.

    • @kelltechkirov8884
      @kelltechkirov8884  3 года назад

      Не стоит искать какие то "особые" решения. Наиболее эффективным те меры, работа которых вам наиболее понятны.
      Даже в крупных проектах, во времена мододельческого ппршлого, я находил явные костыли. Ваше решение тоже неплохое.

    • @ЯщикПочтовый-з7ф
      @ЯщикПочтовый-з7ф 3 года назад

      @@kelltechkirov8884 Часто просто одно костыльное решение за собой ведет огромное наслоение следующими, из-за невозможности корректного добавление дополнительных типовых функций в проект. По этому, по возможности стараюсь тратить время на поиски решений, которые не потребуют за собой дополнительных надстроек, если их функционал будет увеличиваться по росту проекта.
      Враг, кстати - повержен. Достаточно простым, как оказалось, решением.
      disk.yandex.ru/i/gv_PMc-z1y6_jQ
      Может кому-то пригодится.

  • @ivanuppercube931
    @ivanuppercube931 3 года назад

    ч 1, а будет еще и 2я? или все же канал заброшен?

    • @kelltechkirov8884
      @kelltechkirov8884  3 года назад

      Конец года. Завал на работе.
      Видео всего то 3месяца не выходят...
      я уже в процессе записи голоса для 2й части. Эта часть будет об фэйкИК ног.
      Ждите...

  • @mispo016
    @mispo016 2 года назад

    Честно, ужасный гайд. Хоть и понятно ели ели первая половина видео, но вторая с блюпринтаме это ужас. Я не могу понять чё вообще делать, ты просто показываешь, что ты сделал с блюпринтами, и ещё чёта в процессе исправляешь. Может я новичок, поэтому я бомблю, но блин, ничего не понятно! Я вообще фрустрации, что тебя все поняли. Автор, я не хочу испортить тебе день, плохой рецензии на гай, у меня просто бомбит сильно с непонимания, что я решил хотя бы высказаться, что бы стало легче! Блятушки! Спасибо за первую половину гайда, дальше тёмный лес

  • @AscaronFrid
    @AscaronFrid 3 года назад

    У меня , при входе в игру , теряется контроль над персонажем. Сделал точно как здесь ------> с 2:17 по 3:28

    • @kelltechkirov8884
      @kelltechkirov8884  3 года назад +1

      Там есть переменная mouse speed которая домнажается на результат эвентов из мыши. Она присвоена 1? Она не должна быть равна нулю..

    • @AscaronFrid
      @AscaronFrid 3 года назад

      @@kelltechkirov8884 Спасибо. Выставил 1-цу. ----- > use controll desired rotation - поставил галочку. Orient rotation to movement - убрал галочку. В "camera boom" -> transfomr выставил WORLD. Мышь "ожила" - вращается вокруг персонажа .Но перс движется только в одном направлении.

    • @kelltechkirov8884
      @kelltechkirov8884  3 года назад

      Вы что то упустили. Ориентация перса управляется через функцию на тике. Проверьте её правильность.

  • @grimanlabs2345
    @grimanlabs2345 4 года назад

    часть 2 будет а

    • @kelltechkirov8884
      @kelltechkirov8884  4 года назад

      Сам проект готов, а вот времени записать нет - завал на работе.

  • @denis4899
    @denis4899 3 года назад

    костыли в небе))

  • @Купилхатузазарплату

    что то не работает твой способ)) наверное устарел))

  • @pimpgamestudio
    @pimpgamestudio 3 года назад

    Ты украинец?

    • @kelltechkirov8884
      @kelltechkirov8884  3 года назад +2

      Беларус.

    • @pimpgamestudio
      @pimpgamestudio 3 года назад

      @@kelltechkirov8884 клас я тоже разработчик игр, беларуский дру если хочешь заходи завтра комне на стрим я буде делать игру обменяемся опытом))

  • @luckypaw2016
    @luckypaw2016 3 года назад

    Ты будто под спидами