[Глава 2] Как создать игру на Unreal Engine 4 / 5. Программирование в Blueprint [в одном уроке]
HTML-код
- Опубликовано: 26 сен 2019
- В этом уроке собран в правильном порядке и оптимизирован весь Blueprint функционал,
который необходим для создания игры на игровом движке Unreal Engine .
00:00
7:46 Трансформация
15:00 Timeline Анимация
22:11 Назначение клавиш
34:20 Cast
44:26 Материал
54:56 Коллизия
1:00:41 Физика
1:08:42 События
1:17:10 Event Dispatcher
1:32:21 Blueprint Interface
1:47:13 Структуры
1:50:06 Энумерация
1:51:43 Аудио
1:58:16 Время
2:03:50 Скрепление
2:12:56 Line Trace
2:30:09 Spline
2:50:41 Наследование
Transform - Трансформация объектов
Timeline - Анимация
Input - Назначение клавиш
Cast - Обмен данными между двумя блупринтами
Материал
Collision - Невидимая оболочка
Физика
Events - События
Event Dispatcher - Диспетчер событий
Blueprint Interface - Обмен данными между блупринтами
Структуры
Энумерация - Списки, Перечисление
Аудио - Звук
Время - Дата, Время, Таймеры
Attach - Скрепление объектов
Line Trace - Линейная трассировка
Spline - Направляющая
Inherit - Наследование классов
Разовый донат new.donatepay.ru/@cyberstars
Patreon - / cyberstars
Discord - / discord
Google Play - play.google.com/store/apps/de...
Facebook - CyberstarsEn...
Instagram - cyberstars_...
ВКонтакте - cyberstars_entertainment
@UnrealEngine
7:46 Трансформация
15:00 Timeline Анимация
22:11 Назначение клавиш
34:20 Cast
44:26 Материал
54:56 Коллизия
1:00:41 Физика
1:08:42 События
1:17:10 Event Dispatcher
1:32:21 Blueprint Interface
1:47:13 Структуры
1:50:06 Энумерация
1:51:43 Аудио
1:58:16 Время
2:03:50 Скрепление
2:12:56 Line Trace
2:30:09 Spline
2:50:41 Наследование
При добавлении таймкодов в описание, ютюб автоматом создаёт отрезки на роликах. Можете добавить ещё в описание. :)
Чел, у тебя самые качественные уроки на просторах RUclips! Пожалуйста, продолжай!!!
То самое чувство, когда досмотрел до конца: глаза красные, мозг кипит, сам в шаге от нервного срыва и тут фраза: "...ух, что нас ждёт!" и у меня глаз задёргался)
Круто, бро. У тебя есть всё чего не хватает unreal engine rus. Т.е. умения доступно подавать информацию. Продолжай.
Лучшие обучающие видео в рус. сегменте.
Проработаный материал, качественная подача, приянтая дикция, где донатить?
Твори еще, будем ждать!
может и не только русском. я недавно начал, но лучше уроков ещё не нашёл ни на каком языке
Столько знаний сразу, что голова пухнет!
у вас такой абалденный голос прям охота смотреть
Самый толковый контент по UE4 в "утубе" из всех, что мне доводиловь видеть ... а видел я их ска дохера
Не перестаю удивляться на сколько крутая подача у автора👍👍👍
Ого! 3 часа полезной информации.:)
Класс, мега полезный материал, удалось очень быстро въехать в блупринты, автор спасибо тебе за труд!
Круть ,не бросай это дело
Отличная лекция!!! По материалам только бросилось в глаза, что normal не работает на основе чёрного и белого, а bump это старая технология появившаяся ещё до normal, diffuse это просто цвет объекта, а specular не отражение, а карта бликов :)
Неплохое музыкальное сопровождение ставлю лайк
Супер видео. Смотрел за несколько заходов, конспектировал, пробовал, чтобы понять как и что работает. Всего сразу в голове не удержишь, но зато есть понимание как оно примерно должно быть. Картинки схем из сотен узлов пугают :D
*СПАСИБО ЗА ИНФОРМАЦИЮ, УДАЧИ*
Спасибо за чрезвычайно информативные уроки!!
супер урок! все понятно показано и рассказано
Дай бог здоровья таким энтузиастам
Как всегда все круто!
Супер! ВЫ - невероятны!
Спасибо за новый урок!
полезный урок , спасибо за видео!
Офигеть, глава 2 больше в три раза первой главы, круть, смотрю!
Спасибо за полезное видео👍
Спасибо за уроки все ясно и понятно
Лайкос и подписон от меня. Пили дальше!
отличный материал!, дай бог тебе здоровьичка!
БЛАГОДАРЮ!!!! От чистого сердца
Ты просто лучший из лучших! Продолжай в том же духе :)
Классная музычка на заднем фоне
Алилуя я дошел до конца ролика, значит я не так и безнадёжен, ну хоть немного понятно шо это такое) спасибо
Как ты еще жив после такого количества информации???? я хочу жииттьь
Интересно)
Благодарю за работу проделанную . Правда не во всем еще разобрался. не все работает как нужно))))
Лупанул лукас, теперь можно смотреть)
Огромное спасибо! Очень полезное видео
Это просто amazing!!!
Вот про назначение клавиш ооочень ползено, спасибо за это отдельно
очень крутой урок! Спасибо! только осилить можно наверное, не меньше, чем за неделю ))))
супер, спасибо огромное
круто объясняешь Спасибо
Бро ты гений
хороший урок
огонь!
31:10 - большое спасибо за урок, весьма информативно, хотя только половину успел просмотреть. Возник вопрос, а каким образом контролируется частота проверок при вызове события при не удержании клавиши? 31:11. Разве комп не грузит, если игра постоянно проверяет, а не нажата ли определенная клавиша?
К тому же, как можно менять, раз в какое время будет прибавляться значение к объекту? Например, если хочется, чтобы он увеличивался на +1 каждые 2 секунды удержания клавиши. А то я в InputAxis не вижу значения, ответственного за время удержания.
кайф, спасибо!
чел просто лучший 100+
Всё хорошо, но с таймлапсами было бы на много удобнее. Добавь пожалуйста.
ЛАЙК МОЙ ПОВЕЛИТЕЛЬ)
Какая все-же сложная штука. Но с вашими уроками, все не почем
клева, хочу такую программу
Звучит круто.
Спасибо за отличные уроки!
Подскажите новичку, пожалуйста. странная штука: клавиши управления персонажем самопроизвольно меняются с кнопок WASD на стрелочки. уже во втором проекте так случилось. никаких назначений клавишь не делал. Сделал таймлайн с поднимающейся платформой. вчера WASD был, сегодня стрелочки. Версия 4.27.1 на Ubuntu 20.04
респектище=)
Спасибо большое за такие отличные курсы, з такой проделанный труд! А есть ли такая же структурированная информация в текстовом виде?
Спасибо за отзыв, такой информации в текстовом виде нет.
и оформление классное
Спасибо за это видео! А у тебя есть на канале подробный урок о взаимодействии материалов и блюпринтов?
Нету
@@cyberstars-5839 Печально)
просмотрено
А как поступить в таком случае? Есть 2-3 объекта, их надо поворачивать и двигать одновременно. Под каждый делать ветки Get All Actors of Class? А что если их 500? Объединение в группу (ctrl+G) хоть и даёт озможность двигать объекты во вьюпорте, но не даёт никакого инстанса в блюпринтах. Как объединить в группу и достучаться до неё?
Лучший
Можешь выложить этот уроки без музыки? Пожалуйста!)
35:55 Почему не прокатит? У меня прокатило. Сразу указал тип BP2. И без Cast to BP2 тоже прокатило, прочитать и установить переменную. UE 5.1 может что то изменилось?
Все очень интересно, но мне кажется будет хорошо, если все эти примеры были бы показаны в примере, зачем и что решает они в игровых проектах. Или я просто не понял, как где это правильно применить)))
вот и пример ruclips.net/video/uV8hkA9f_vk/видео.html
доброй ночи, новый вопросик, теперь посложней ) такая проблемка возникла, есть два обьекта, ячейка и пулька, у них настроены у обоих события onComponentHIt и если выводить в консоль то сообщения выводятся для обоих, пулька говорит что врезалась, а ячейка сообщает что в нее врезались. все хорошо, пока я не добавляю логику удаления пульки при контакте с ячейкей, я на onHit для пули вызываю DestroyActor, пуля исчезает, но второй хит у ячейки уже не отрабатывает. и это ОЧЕНЬ странно, мне пришлось перенести код удаления пули в код hit для ячейки, и выходит что обьект знает особенности удаления другого обьекта, что не очень ложится в SOLID, хотелось бы развязать эти два поведения. но мне очень не понятно зачем так сделали ? я ожидал что хит отработотает на обоих обьектах. вынести код в пулю тоже оказалось не удобно, в силу того что, чтобы вызвать кастомное событие destroyCell, мне надо проверять в кого я врезался, делать cast и вызывать их .. это превратилось в вермишель и все из-за того что второй hit не хочет вызываться. я предпологаю что я просто не коректно понимаю архитекругу событий движка, подскажите как быть. а то эта вермишель меня угнетает, думал еще вариант с диспатчером или интерфейсами. но это будет уже сахаром, он не отвечает на вопрос почему "гасится" цепочка событий пайплайна. если он там вообще есть... и в чем разница между Event Hit и onComponentHit? час спустя. пошел покурил. вернулся и меня осенило что если моя ячейке не стоит галочка simulate phisycs, выставил. и все стало на оборот, теперь ячейка отрабатывает первой а логика удаления пульки не срабатывает и думаю потому что ячейка тоже уничтожаемая, и теперь она убивается раньше и не передает эстафету hit пуле... что за круговая порука. я не хочу писать код все в одном блупринте только чтобы срабатывали события. в них тогда нет никакого смысла (
👍👍👍
Привет! Могли бы Вы сделать уроки про свет (фонарик); Базовую систему персонажа (ХП, Атака, Броня); Создание оружия (Дробовик, Автомат, Ракетница, Снайперка); Атака (Ближний бой, Урон от пули (выстрела)); Поведение NPC, если враг рядом; Инвентарь; Поднятие предмета со сцены и взаимодействие с ним?
Я знаю, что эти уроки есть на других каналах, но хотелось бы увидеть их от этого учителя. Огромное спасибо за предыдущие уроки, я по ним сейчас и учусь. Всё получается, поэтому, с уважением, прошу ещё :)
Привет, всё будет! Но не сразу)
по какой лицензии вы используете музыку, есть ли проблемы с авторским правом на ютуб ? или видео не расматривалось для монетизации ?
RoyaltyFree специальная музыка которую предоставляет Ютуб
а так если вы ставите другую то монета идет автору
Также было отлично иметь описание всех функций ,которые можно использовать в blueprint, с описанием и комментарием его на русском в текстовом формате. Просто есть инструкции на англ и не особо понятно, что они делают.
В описании имеется описание функций
сорян за тавтологию )))
@@cyberstars-5839 это я прочитал и видел. Очень благодарен за материал, многое для себя открыл. Но моя просьба была в другом, я имел в виду то, что скрывается внутри каждого. В видео вы рассказывали про родительскую функцию, допустим timeline, а внутри еще пару дочерних функций. На основные моменты вы обратили внимание, я так понимаю подробнее они будут в других роликах=). Нужно будет начать учить английский посерьезнее мне)). Надеюсь, будут ролики с созданием игр, а также очень хотелось бы видеть материалы которые вы использовали, чтобы самому использовать и экспериментировать.
@@maratnarimanyan8984 да тут можно посмотреть каждую тему отдельно в плейлисте по blueprint, плюс там больше практики,
в этом ролике собраны и урезаны блупринт темы
У меня возникла проблема! Когда я сделал светящийся материал и приблизился к нему редактор потемнел, а когда отдалился снова стал светлым. Как это убрать?
в post processing выстави значение exposure от 0 д о1
За это время у узнал то что немог узнать за все 12 школьных классов
Вопрос, можно ли на блюпринтах реализовать смену управления пользователем? Т.е. чтобы как во всех нормальных играх, человек мог зайти в опции игры и назначить собственные клавиши? Я только начал изучать анриал, до этого 12 лет работал с Юнити... Если это достаточно сложно и просто в комментарии не объяснить, очень бы хотелось урок по этой теме.
Спасибо. Лайк и подписка оформлены 😉 P.S. За Cast отдельное спасибо, долго ломал голову, как получить доступ к данным одного объекта из другого, а тут так понятно все рассказано ❤
Вопрос про Event Dispatcher.
При нажатии ctrl происходит запуск эвентов вращения и увеличения объектов. А как сделать остановку вращения при отпускании ctrl?
Через какой-нибудь animation stop, если такой есть? Или возможно какой-нибудь gate или логика and или or? Не сообразил как такое сделать.
upd. Или нужно создавать второй event dispatcher и в BP1, BP2 для остановки анимации? >.< не понимаю
Если на таймлайне. То там есть возможность делать стоп. вход в самой ноде.
На crrl есть ивент на отжатие. На него и можно повесить второе событие диспатчера
@@cyberstars-5839 Но у тебя два события: клавиша нажата и клавиша опущена. Как ты привяжешь два события к одному ED? Или как ED поймет какое событие произойдет?
При нажатии вызывается ED1 и вызывается Event rotation. Если при отпускании вызвать также ED1 и создать второй ивент Stop rotation, и сделать бинд из одного ED на разные ивенты, как система сможет это понять? Я не понимаю, объясни подробнее пожалуйста.
Еще не видел ни одного урока с ED с несколькими ивентами. Получается для остановки анимации создавать второй ED?
upd. Аа, возможно нужно вызвать ED не с LCtrl а с beginPlay, а в BP1 когда сделали каст в ED1 уже там в bind event добавить срабатывание на LCTRL и именно там прописать нажатие и отжатие клавиш и запуск/остановку анимации?
Отлично объясняешь, спасибо за такой труд желаю развития канала и удачи в жизни) И есть вопрос один к кому-нибудь, кто в этом разбирается, у автора в видео есть лучи по типу как в конце он нажимаешь контр и в event grath видно эти лучи и куда они в данный момент движутся, у меня нет таких лучей, что нужно делать, чтобы они появились ? И когда проходили в этом видео урок по лучам, которые указывают на предметы перед тобой, у него был красный(или зелёный) луч, который указывал на предметы и проходил сквозь них и при этом показывал названия предметов и т.д, так-вот у меня нет и этих лучей, но названия предметов он выписывал слева вверху. Кто знает, как решить данную проблемку ?)
На 36:36 видео у тебя присутствует вкладка default но у меня её нет на панели вообще. Это обнова или я что то сделал не так?
У меня тоже не было, скомпилируй первый блупринт, в котором переменную открыл.
He is a little better
С-П-А-С-И-Б-О !!!!
1:42:06 У меня с циклом ForEachLoop для массива сработало.
21:44 "Плавную анимацию"? "Применить интерполяцию"? По вашему до этого была анимация не плавной, а интерполяция отсутствовала? Правильно было бы сказать: "Можно менять режимы интерполяции от линейной к сглаженной (бизье и её разновидности)".
а эта версия дополнение к часовой от 26.06 или это ее продолжение?что сначала лучше смотреть?
да это продолжение, лучше сначала часовой, урока всего три Базис, Продвинутый и практика
@@cyberstars-5839 благодарю,очень хорошие уроки))
подскажите плиз, а как создать управляемый обьект, чтобы можно было ему так же сетить события на мувемент, выставлять параметры скорости и т.д.. только чтобы это была не капсула а куб ? а то я пытаюсь удалить капсулу а оно нивкакую. я хочу сделать доску отбивающую мячик, но для pawn и actor, таких настроек как скорость движения и прочего нет, и как быть ? ) думал схитрю заменю капсулу на куб, а нету там закладки меша, я могу выставить капсуле nocolision, и добавить туда свой куб, но как то это уже пахнет костылями..(заранее спасибо )
Тут дело в том что все эти pawn или character это наследуемый класс и изначально он берет все из одного исходника,
а удалять то что наследуется (inherit) нельзя
@@cyberstars-5839 спасибо) стал искать. нарыл это видео, если создавать блурпнит не от pawn а от default Pawn, то там все что мне надо есть ) странная логи, не очень понятно почему у дефалта больше компонтов, но работает ) ruclips.net/video/c30nwXJz9GY/видео.html
@@cyberstars-5839 возможность двигать обьект появилась, только вместе с ней вылезла и другая проблема, в отличии от его рузультата, у меня после добавления конуса, дефалтовая сфера осталась и когда я запускаю игру, у меня видно и мой конус, и это "долбаную" сферу. что вообще происходит. ) при том что у него после добавления gameMode конус сам появляется на сцене, у меня же только если перетянуть его на сцену..
Подскажите, пожалуйста, может ли UE4 работать с КОМПАСом?
если только обычный экспорт
добрый вечер, в чем особоенность defaultSceneRoot, очень себя странно ведут блупринты, в которых скажем куб находится как дочерний для него. в другом обьекте я захватываю событие onbeginOverlap, беру из него OtherActor меняю ему размер через setworldscale3d, и ничего не происходит, точнее в сообщениях консоли я вижу что значение меняется, но визуально компонент не меняется, переношу этот же код, в блупринт самого куба на beginStart, как обьект подсовываю ему прямую ссылку cube, и все увеличивается., причем если зайти в сам блупринт куба выделить defaultSceneRoot, там стоят для скейла 1 1 1, если их менять то меняется и сам cube, но в коде почему то не происходит, и самая вишенка, что если перетянуть куб из "дочерности" на defaultSceneRoot, то этот рут пропадает и остается только куб, и все начинает работать и на оверлап уже все реагирует как и ожидалось изначально. что за зверь такой этот defaultSceneRoot, зачем он нужен и как с ним коретко работать, как вытягивать правильно куб, там ведь могут быть и другие обьекты и если я захочу их скопом увеличить, то было бы удобно скажем удвоить развем по одной оси, но все равно оно не работает.. тогда зачем он нужен ? у вас в видео вы атачите капсулы к кубу, и тогда оно работает, но если скейлить сам defaultSceneRoot, ничего не происходит.. у вас на 1:39, вы делаете через интерфейсы и там получается прямую ссылку на цилиндр, НО, если я в коде получаю ссылку на сам блупринт, как мне достучатся к кубу внутри него ?, но главный вопрос, это почему увеличение через SetWorldScale для defaultSceneRoot, не приводит к визуальным изменениям ? (
Достучатся до куба очень просто, если у вас есть ссылка на БП то вытягивайте из неё переменную с именем куба,
defaultSceneRoot ' это не видимая оболочка, которая просто содержит в себе весь БП,
@@cyberstars-5839 супер, все получилось. теперь я могу вынести логику изменения ракетки, в блупринт самой ракетки, а не пытаться изменить ее параметры из блупринта, который по сути не должен знать о ее существовании )
Что за трек вначале? 0:03
я не помню название, жанр Neuropunk
почему в анриле ось зэд это ось игрек ? типа у них свой путь )))
С 3д макса привык что ось Z это вертикаль. Ниче необычного)
Музыка ахуенная подобранна)!
На 1:31:13 Закипел моск
Все отлично но соглашусь с комментатором ниже на счет музыки
хорошее видео, но из-за длины, неудобно двигать бегунок времени. Разбить бы на части.
ок, готово
Грамотная оптимизация ...все необходимое для игры
Богдан, из плюшки, это ты?
этот урок должен был начинаться с этой песни
ruclips.net/video/ITTz_3DGGMI/видео.html
Спасибо за урок!
Но зачем такая бьющая по ушам музыка на фоне в начале ролика. Она же конкретно мешает воспринимать информацию. Поставил бы что-нибудь нейтральное или спокойное, было бы совсем другое дело.
Музыка лишняя отвечаю
Убери заставку или сделай проще и более гладкой. Фоновую музыку делай тихой и неброской.
Автору: музыка на заднем фоне отвлекает.
Если мне надо будет дополнительно развлечься во время обучения, я всегда могу включить на своём компьютере всё, что мне надо - от радио и ютуба в другом браузере до игр. А так отвлекает, внимание переключается с урока на музыку. Иногда даже непонятно, что это музыка и начинаешь смотреть, что там упасть могло за спиной и издать такой звук.
Уроки качественные, но фоновая музыка отвлекает. Лучше без посторонних звуков вообще.
Да, я тоже считаю что музыка не помогает концетрации. Впрочем, думаю эту проблему можно решить с помощью ИИ от Deezer. :)
я нормальный не подумайте
Блин, такой хороший материал и все портит музыка. Ну зачем её ставить в уроки?
Она же только в начале, а так музыка еле слышна!
Все нормально с музыкой
Это очень полезно для тренировки мозга.