Перейти к содержимому

Как реплицировать переменные в Unreal Engine 5 | Разбор RepNotify | Мультиплеер в UE5 №3

Dev-initely Mario

0:00 / 0:00

Как реплицировать переменные в Unreal Engine 5 | Разбор RepNotify | Мультиплеер в UE5 №3

252 просмотра · 1 мес. назад
Dev-initely Mario
278 подписчиков
252 просмотра · 1 мес. назад
Узнайте, как реплицировать переменные в многопользовательском режиме Unreal Engine 5 с помощью RepNotify и начните работать с серверными RPC! В третьей части нашей серии «Многопользовательский режим UE5 с нуля» мы наконец-то начнем создавать собственную логику репликации в многопользовательском режиме, вместо того чтобы полагаться только на системы, которые уже обрабатывает Unreal Engine. Мы начнем с создания простой системы здоровья внутри нашего персонажа игрока и создадим базовый виджет полосы здоровья, чтобы мы могли немедленно видеть изменения здоровья игрока. Мы также создадим интерфейс Blueprint для доступа к значению здоровья из пользовательского интерфейса. Затем мы создадим временный вход для урона и используем его для демонстрации одной из важнейших концепций многопользовательского режима в Unreal Engine: Изменение значения локально не означает автоматически, что каждый игрок получит это изменение. Мы сравним обычные переменные с RepNotify, протестируем, как ведут себя реплицированные данные между сервером и клиентом, и используем видимые изменения в сетке персонажа, чтобы сделать разницу легко понятной. Далее в видео мы представим наш первый RPC-запрос, запускаемый на сервере, чтобы клиент мог запросить изменение у авторитетного сервера. В этом видео вы узнаете: Как создать переменную здоровья Как создать простую полоску здоровья в UE5 Как использовать интерфейсы Blueprint с пользовательским интерфейсом Как нанести урон игроку для тестирования Почему локальные изменения не реплицируются автоматически Как работает репликация переменных Как работает RepNotify Для чего используется OnRep Как визуально протестировать репликацию Почему уничтожение реплицированного актора может дать некорректный результат Чем отличаются репликация на сервере и клиенте Как создать свой первый RPC-запрос, запускаемый на сервере Почему клиенты должны запрашивать авторитетные изменения игрового процесса у сервера ⚠️ Важное замечание о финальном тесте Во время финального теста я случайно поменял местами окна сервера и клиента, что привело к некорректному результату. Логика репликации, показанная ранее в видео, по-прежнему является важной концепцией, но в следующем видео мы вернемся к окончательной настройке, исправим тест сервера/клиента и упростим процесс репликации. Мы также продолжим работу с многоадресными RPC и сделаем весь процесс намного чище. Эта серия намеренно построена пошагово, чтобы вы поняли, почему многопользовательский режим Unreal Engine работает, а не просто копирует узлы Blueprint. 💬 Если у вас есть вопросы, присоединяйтесь к нашему Discord и общайтесь с другими разработчиками Unreal Engine. 👍 Если серия вам помогла, подпишитесь, чтобы не пропустить 4-ю часть! 00:00 Наша первая настоящая многопользовательская репликация 00:45 Создание переменной здоровья 01:48 Подготовка отображения здоровья 02:20 Создание виджета полосы здоровья 05:17 Привязка полосы здоровья 06:28 Создание интерфейса здоровья 08:02 Реализация интерфейса 09:01 Подключение здоровья к HUD 09:55 Создание HUD 10:46 Создание теста урона 12:02 Тестирование здоровья игрока 12:50 Проверка здоровья между сервером и клиентом 14:00 Почему наш первый тест вводит в заблуждение 14:56 Введение в RepNotify 15:54 Тестирование без репликации 17:50 Включение RepNotify 18:31 Репликация сервера и клиента 19:25 Создание нашего первого серверного RPC 20:40 Перенос логики на сервер 22:33 Тестирование реплицированного Результат 22:42 RepNotify против обычной репликации 23:12 Следующий шаг: Многоадресные RPC #UnrealEngine5 #UE5 #Multiplayer #Replication #RepNotify #Blueprints