Тёмный

Урок 3 | Unreal Engine 5 Мультиплеер - РЕПЛИКАЦИЯ 

Cyberstars -  How to create a game
Подписаться 142 тыс.
Просмотров 19 тыс.
50% 1

21:Это третий урок из серии Unreal Engine 5 Мультиплеер, в котором мы будем разбирать репликацию данных
00:00 Содержание
00:44 Replicate Movement
07:21 Authority
09:45 Actor Replication
15:49 Component Replication
18:11 Vartiable Replication
21:57 Event Replication (RPC Function)
27:05 not-replicated
Разовый донат new.donatepay.ru/@cyberstars
Patreon - / cyberstars
Discord - / discord
TikTok - www.tiktok.com/@cyberstars_en...
Google Play - play.google.com/store/apps/de...
Facebook - CyberstarsEn...
Instagram - cyberstars_...
ВКонтакте - cyberstars_entertainment
Телеграм - t.me/cyberstars1
#cyberstars #gamedev @UnrealEngine

Опубликовано:

 

11 июн 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 87   
@cyberstars-5839
@cyberstars-5839 Год назад
Discord - discord.gg/z8t2uSWCBq Разовый донат new.donatepay.ru/@cyberstars Patreon - www.patreon.com/cyberstars
@gil08100
@gil08100 Год назад
Какие же крутые и познавательные видео, я просто кайфую! Спасибо, Cyberstars!
@arik4787
@arik4787 Год назад
Я думал реализация мультиплеера в анриле в разы сложнее, а оказывается, что всё очень просто. Спасибо за уроки
@unicoxr5tj417
@unicoxr5tj417 Год назад
пожалуй, лучший канал по игроделу
@veymatcompany6959
@veymatcompany6959 Год назад
Тёплый комментарий поддержки канала
@conquerordie1580
@conquerordie1580 Год назад
Все четко без воды!!! Очень полезно!👍
@TheBestSurvival
@TheBestSurvival Год назад
Очень толково, красиво, познавательно и главное я кайфую от такого типа подачи информации. Спасибо 100500 раз
@dad3507
@dad3507 Год назад
Супер, жду следующее видео с нетерпением !!!
@ED-ik7fs
@ED-ik7fs Год назад
Лучший ! ✊ Спасибо за уроки.
@user-sk1ct8bz4f
@user-sk1ct8bz4f Год назад
Мега харош , очень. Полезные видео
@segeus
@segeus Год назад
Теперь понятно, почему при пирТУпир системе на повторах ДезКам всё выглядит так странно и потешно!)))
@user-wb6st6tg5p
@user-wb6st6tg5p Год назад
Спасибки за очередной познавательный видось.
@romanoff2450
@romanoff2450 Год назад
Очень жду продолжения!
@Showreels-lm8uh
@Showreels-lm8uh Год назад
Отличный и познавательный ролик! Хотелось бы добавить пожелание. В рамках серии туторов про мультиплеер, сделать ролик, в котором наглядно показывается как завершить свой мультиплеер в игру и подключить в него друзей. Пусть это будет сделано на обычной болванке, самом начальном уровне UE5. Главное, это сам момент подключения других игроков к тебе. Спасибо заранее🙏
@cyberstars-5839
@cyberstars-5839 Год назад
Все Это будет
@anotherpain9120
@anotherpain9120 Год назад
Благодарю
@radcontrols3d115
@radcontrols3d115 Год назад
Ааааааааа класс новый видос
@rapatologyrrr472
@rapatologyrrr472 Год назад
Всего лишь стрим а эмоций море
@1play2fun
@1play2fun Год назад
И сколько радости в том что галочка работает
@rapatologyrrr472
@rapatologyrrr472 Год назад
@@1play2fun это даже не радость а сплошное удовольствие
@levonze
@levonze 6 месяцев назад
7:42 гномы из little nighmares 😂 А так, спасибо за урок!
@Vicont4063
@Vicont4063 Год назад
Супер! Можно что не будь про VR?
@user-zt7zx8zm6b
@user-zt7zx8zm6b Год назад
Большое спасибо за уроки, очень полезные. К сожалению не всегда получается связать навыки из разных уроков в единое целое. Нельзя ли вернуться к серии уроков по AI и сделать как бы закрепляющий урок с реальным игровым функционалом. Я просмотрел все уроки из этой серии, но пока не смог сделать задуманное. Задача чисто игровая - например есть enemy, он должен патрулировать или по рандомным точкам(это есть в уроках) или по чек поинтам(этого нет). При этом постоянно мониторить присутствие игрока(у вас сделано через ConeCheck в BehaviorTree, но хотелось бы через AiPerception в AiController там больше настроек). Далее меняем анимацию на "преследование" - это важно! и пытаемся догнать игрока, если догнали то "атака", если потеряли из виду - то N секунд движемся к последней точке где видели игрока, и если не находим то пауза пару сек, опять смена анимации на обычную ходьбу и возврат в точку откуда начали преследование, потом продолжение патрулирования. Я логику в принципе сделал, кусками, но не могу все связать вместе. Например не понимаю как пробросить состояние AiPerception внутрь BehaviorTree в тот момент когда бот делает "MoveTo", получается только после, но это уже не то. Или например есть StateEnum(Idle, Walk, Chase, Run, etc) для смены анимаций в AnimBP, и чтобы он работал внутри транзишенов в AnimBP его необходимо менять откуда то снаружи, видимо из BehaviorTree. Или я вообще неправильно понимаю структуру этого движка. Еще есть трабл с тем какие классы создаются раньше а какие позже. Например я умудрился вызвать переменную из blackboard до его создания.
@user-my8de9ix4x
@user-my8de9ix4x Год назад
Спасибо. Всё здорово, но очень не хватает отображения на экране нажатия клавиш.(
@andreydon8268
@andreydon8268 Год назад
можно ли сделать так чтоб игроки могли переходить с уровня на уровень не зависимо к примеру (как бы один игрок быстрее прошёл эту карту, а второй нет его. который уже прошёл будит ждать его или же будит проходить дольше)
@roydash5657
@roydash5657 Год назад
У меня есть один вопрос. Если я создал Искусственный интеллекта (с анимации, получается урон, нападает и так далее) и этот искуcственный интеллект будет да пустим каждый уровней или этоже будет ждать игрока. Как мне стоит начать начать через ивент бегин плай или не знаю?
@kislo_ta
@kislo_ta Год назад
Вопрос: а в unreal можно на блюпринте использовать модели с других программ?
@cyberstars-5839
@cyberstars-5839 Год назад
Нет
@osore_7875
@osore_7875 9 месяцев назад
Вот пытаюсь изучать репликацию переделивая темплейт с FPS. Там оружие идет как меш компонент и логика выстрела в ньом. Когда пытаюсь зделать спавн пули з клиента передавая рпс на сервер, ничего не происходит и в лог пишет что неимею контроля над компонентом оружия. В чем тут проблема?
@cyberstars-5839
@cyberstars-5839 9 месяцев назад
Компонент тоже должен быть реплизирован (галочка)
@alphadayz9621
@alphadayz9621 Год назад
Добрый день, у вас отличные уроки. Интересует вопрос как можно реализовать Выборочную репликацию клиентов? Предположим есть Персонажи за обзором камеры(или в тумане войны) и чтоб они реплицировались одному или группе игроков но не всем, только когда они попадают в камеру(от первого лица).
@cyberstars-5839
@cyberstars-5839 Год назад
Есть дальность репликации. В настройках класса
@cyberstars-5839
@cyberstars-5839 Год назад
Либо реплицировать только то, что выделено. То есть внутри объекта делать проверку
@Themyter
@Themyter Год назад
Здравствуйте у меня возникают проблемы по Unreal Engine 5 1 не получается перенести контроллер FirstPerson в ThirdPerson шаблон (через проводник захожу в мой проект в папку контент и копирую FirstPerson и в другом проекте в папку контент вставляю но исчезают все анимации итд ) зачем мне переность контролер ? мне нужен ai и FirstPerson в одном проекте. 2 я создаю модель домика и применяю к нему модель разрушения chaos но персонаж может сдвинуть это дом и сломать ТАК БЫТЬ НЕ ДОЛЖНО я пробовал увеличить массу но всё без успеха слышал про якоря но не нашел как их применить. надеюсь на помощь буду очень рад если CyberStars снимет видео про систему разрушений.
@user-lz6pq7tk9q
@user-lz6pq7tk9q 10 месяцев назад
Доброго времени суток. Вопрос по RPC. Объясните, пожалуйста, почему если НА ИНПУТ спавнить меш из блупринта игрока с RPC serv->multi, то отображается у всех клиентов, но если сделать тоже самое через блупринт контроллера - не работает. Все никак не могу с этим разобраться, тыкался везде и по-разному, но не выходит.
@cyberstars-5839
@cyberstars-5839 10 месяцев назад
Павн перса реплицирован - его копия есть у всех сторон. А контроллер не реплицирован . Его копия есть только у сервера.
@user-lz6pq7tk9q
@user-lz6pq7tk9q 10 месяцев назад
​@@cyberstars-5839 То есть получается так: если я хочу на инпуте делать действия, которые должны быть видны у других игроков (например спавн проджектайл пули), я должен логику инпута прописывать именно в персе? Или есть какой-то обходной вариант? По итогу я в контроллере на инпут вызвал кастомную serv функцию самого перса и все сработало (что конечно очень логично). Это нормальная практика или есть способы так сказать по-правильнее? Заранее спасибо за ответы
@kislo_ta
@kislo_ta Год назад
А можно на unreal engine сделать мультиплеер с разными персонажами с разной физикой (их модели и хитбокса?)
@cyberstars-5839
@cyberstars-5839 Год назад
Можно
@user-kj7nt6re3c
@user-kj7nt6re3c Год назад
Думаю заняться 3D моделированием спустя 22 года, умею рисовать портреты простым карандашом. Хотелось бы узнать, востребованы ли такие люди в индустрии?
@1play2fun
@1play2fun Год назад
Довольно да
@MrDenKuzn
@MrDenKuzn Год назад
3D-художников до жопы. Каждый второй посмотрел курсы. Но действительно качественных очень мало. Если не будешь развиваться, а просто вертексы гонять - не будешь востребован. Все просто.
@user-kj7nt6re3c
@user-kj7nt6re3c Год назад
@@nathanblake1535 Спасибо
@igorekzyryanov3338
@igorekzyryanov3338 Год назад
Здравствуй, а есть ли возможность сделать открытый мир с планетами и космосом, с возможностью ходить по планета и летать между ними? Хотелось бы увидеть как это возможно сделать. Спасибо за твои видосы👍
@cyberstars-5839
@cyberstars-5839 Год назад
Можно. World partition
@ruslangolovchenko6797
@ruslangolovchenko6797 Год назад
А для каких целей нужен вызов run on client? Где это можен пригодится в мультиплеере?
@cyberstars-5839
@cyberstars-5839 Год назад
Для тестов. Когда нужно запустить сервер из клиента
@ruslangolovchenko6797
@ruslangolovchenko6797 Год назад
@@cyberstars-5839 Спасибо!
@NRK_2012
@NRK_2012 Год назад
Скажите пожалуйста уже есть видео о всех игровых движках
@cyberstars-5839
@cyberstars-5839 Год назад
отдельного видео нет, но эта тема была затронута в этих роликах: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-KjBBC07hGjQ.html ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-V3SKOANqI-k.html
@NRK_2012
@NRK_2012 Год назад
@@cyberstars-5839 а снимите отдельный ролик?
@cyberstars-5839
@cyberstars-5839 Год назад
возможно)
@NRK_2012
@NRK_2012 Год назад
@@cyberstars-5839 если снимите про все игровые движки ну эти открытые закрытые по крайней мере из видео по пошаговой инструкций ну это я про категории,то буду очень благодарен
@Kombatant777
@Kombatant777 Год назад
Урок по GAS будет?)
@1play2fun
@1play2fun Год назад
Блюпринтеры его потом запинают резиновыми палками?
@deadmorose4741
@deadmorose4741 Год назад
@@1play2fun есть плагины для упрощенной работы с инициализацией GAS.
@blitz0481
@blitz0481 Год назад
А можно ли будет сделать игру-мультиплеер без синглплеера?
@cyberstars-5839
@cyberstars-5839 Год назад
Хехе . Можно
@blitz0481
@blitz0481 Год назад
@@cyberstars-5839 Я просто игру с другом делаю,на подобии PUBGMobile,но мы всё делаем по гайдам,т.к. мы ничего про это не шарим,новички грубо говоря).
@vachetorosyan7235
@vachetorosyan7235 Год назад
✌✌✌✌✌✌✌✌
@user-yj9dv2zg8b
@user-yj9dv2zg8b Год назад
Из блюпринта репликация с мульикаст не передаётся на сервер (а от сервера на клиент передаётся) - в чём может быть причина? Клиентом открываю дверь, но сервер не видет открытие/закрытие двери, но если сервер открывает/закрывает дверь - клиент видет.
@cyberstars-5839
@cyberstars-5839 Год назад
В блупринте перед мультикаст нужен RPC на сервер
@xo0oxNicKeRxo0ox
@xo0oxNicKeRxo0ox Год назад
24:57
@user-yj9dv2zg8b
@user-yj9dv2zg8b Год назад
@@cyberstars-5839 В том то и проблема, что он не отправляет на сервер, Run on Server не работает.
@user-yj9dv2zg8b
@user-yj9dv2zg8b Год назад
@@xo0oxNicKeRxo0ox Да, всё верно, но не работает так. Может быть причина в том что я это делаю в отдельном блюпринте, а не в BP_персонажа? У меня блюпринт Актор.
@cyberstars-5839
@cyberstars-5839 Год назад
Да, из за этого. Нужно владеть тем actor с которого вы реплицируете
@derakon4791
@derakon4791 Год назад
Помогите кто может, я могу использовать мегасканы для андроид игры? это вобше возможна? Я имею в виду они не будут ли слишком тяжолымы для мобильных устройств
@1play2fun
@1play2fun Год назад
будут тяжелыми, у андроида редко так много VRAM
@derakon4791
@derakon4791 Год назад
@@1play2fun спасибо
@psychokiller4524
@psychokiller4524 Год назад
Мегасканы весят много, да и на компах порой лагают. Однозначно нет
@derakon4791
@derakon4791 Год назад
@@psychokiller4524 спасибо
@hhbi
@hhbi Год назад
если мобилка, то лучше тримы, так, на мой взгляд, будет лучше. Тут вообще биться за оптимизацию придётся
@denchurikov210
@denchurikov210 Год назад
А с какой целью нужно просчитывать координаты и на клиенте и на сервере, если эти данные всё ровно будут получены всеми с сервера, почему нельзя просто просчитывать всё на сервере а клиенту выдавать результат, в чем причина??
@cyberstars-5839
@cyberstars-5839 Год назад
Это просчитывается на сервере а с клиента приходят данные куда игрок хочет пойти
@through-it
@through-it 10 месяцев назад
причина в том, что передача данных по сети производится реже, чем отрисовка на клиенте, и в промежутке между получением данных от сервера надо визуал чем-то восполнять (иначе будут подлагивания). Поэтому и реализуют экстраполяцию, чтобы было плавно, пока не пришли актуальные данные от сервера.
@timofeik5556
@timofeik5556 Год назад
напомните плз как переключиться между игроками
@cyberstars-5839
@cyberstars-5839 Год назад
Один игров должен запустить карту с опцией listen. Нод open level
@genrihkutz
@genrihkutz Месяц назад
почему гейм мод существует только на сервере, если он существует на клиенте ?
@cyberstars-5839
@cyberstars-5839 Месяц назад
Его логика выполняется на сервере
@RomanAisly
@RomanAisly Год назад
Если вам лень смотреть всё видео то вот спойлер: без галочки "replicate" ничего не работает 😀
@user-wi3qo1nr4z
@user-wi3qo1nr4z Год назад
Делай тайм коды
@1play2fun
@1play2fun Год назад
Плюсую, без тайм кодов сложно ориентироваться
@farkasvilkas5839
@farkasvilkas5839 Год назад
уважаю попытку автора объяснить эту страшную сложную тему, трудился. но, к сожалению, эту репликацию все объясняют ужасно ничего понять не могу. Как репликация вообще работает? Где сервер, где клиент? Нужны практические примеры, а не синие кубики. Вот например, у меня динамический материал на персонаже. Хочу чтобы они бегали разноцветные - и я видел кто из них host, а кто клиент. Что мне в реплицировать? Сам материал? Или какую-то вспомогательную переменную типа Color если я хочу поменять ему цвет и все увидели. Вот эта суть не понятна. Сами основы. наверное, я поспешил заняться мультиплеером, никто не может пояснить самое простейшее например, как мне увидеть пушку в руках другого игрока или то, что он окрасился в другой цвет. начинают мне перечислять все галочки в движке, перечисления, все возможные термины и выстреливают их как из пулемета. Это ужасно. Стиль подачи у автора, как будто он в академии наук сдает зачет. И академики ему кивают головами. А автор мелом выводит трехэтажные формулы, одну за другой. И говорит книжными словами, как академики любят. Нет, тут не академики. Обычные ученики. Понимаю что это сложная наука, но зачем ее еще сильней усложнять. А потом люди будут делать багованные и тормозящие игры.
@through-it
@through-it 10 месяцев назад
Через RPC всё это реализуете, передаёте параметры на одной стороне, обрабатываете на принимающей и передаёте дальше (или всем), если нужно. А на счёт репликации переменных - в видео было сказано как сделать репликацию с вызовом обработчика, пересмотрите видео внимательно ещё раз =) При репликации (если указан правильный тип репликации конечно), может вызываться обработчик с вашей логикой. На счёт стиля изложения, - обычный академический стиль, когда сначала рассматривается всё в общих чертах (основной концепт), а потом уже более детально по каждому из ранее изложенных пунктов. Если это самый первый проект в рамках обучения, то конечно мультиплеер это слишком рано. Для начала необходимо ознакомиться с движком, с инструментами, с доступными классами и компонентами. Сделать что-то простое в оффлайн, задействуя все основные классы и инструменты (gamemode, level, hud, controller, aicontroller, actor, pawn, редактор ландшафта, анимации, звуки, частицы и прочее). Возможно даже несколько раз в разных стилях для закрепления. Потом уже изучать мультиплеер. И проект, который планируете выпускать в общее пользование уже можно затачивать под мультиплеер. Хотя бы архитектура проекта всегда должна придерживаться клиент-серверному взаимодействию, даже если проект делается под одного игрока.
Далее
Мультиплеер UE4 - Репликация
18:39