Вопрос Репликация skeletal mesh

Пользователь
Статус
Оффлайн
Регистрация
12 Сен 2020
Сообщения
86
Реакции[?]
40
Поинты[?]
2K
Как правильно сделать репликацию skeletal mesh`а? Я у игрока меняю skeletal mesh, и он по сути должен измениться на сервере, клиенте, и будущих клиентах которые подключатся.
 
Пользователь
Статус
Оффлайн
Регистрация
28 Авг 2020
Сообщения
232
Реакции[?]
510
Поинты[?]
302K
Привет. Вы говорите об изменении skeletal mesh для всех игроков, например, при выборе разных персонажей? Если это так, вам нужно выполнить «Set Skeletal Mesh» на сервере, а затем на клиентах. Это похоже на начало этого видео:
 
Пользователь
Статус
Оффлайн
Регистрация
12 Сен 2020
Сообщения
86
Реакции[?]
40
Поинты[?]
2K
Привет. Вы говорите об изменении skeletal mesh для всех игроков, например, при выборе разных персонажей? Если это так, вам нужно выполнить «Set Skeletal Mesh» на сервере, а затем на клиентах. Это похоже на начало этого видео:
Привет, я видел это видео, но новые игроки которые подключаются, не видят эти изменения.
 
Пользователь
Статус
Оффлайн
Регистрация
28 Авг 2020
Сообщения
232
Реакции[?]
510
Поинты[?]
302K
Вы повторно запускаете этот код каждый раз, когда новый человек входит в систему? Это нужно делать, когда игрок меняет персонажа и когда другой игрок входит в систему. Таким образом, новый игрок, который только что подключился, также будет получать информацию с сервера. Не знаю понятно ли :)
 
Пользователь
Статус
Оффлайн
Регистрация
12 Сен 2020
Сообщения
86
Реакции[?]
40
Поинты[?]
2K
Вы повторно запускаете этот код каждый раз, когда новый человек входит в систему? Это нужно делать, когда игрок меняет персонажа и когда другой игрок входит в систему. Таким образом, новый игрок, который только что подключился, также будет получать информацию с сервера. Не знаю понятно ли :)
Понятно, но как это вызывать? Через gamestate, gamemode? Просто вызывать у всех игроков через цикл, каждый раз как кто-то конектится, звучит дико. Поэтому вот стоит вопрос, как правильно это делать.
 
Пользователь
Статус
Оффлайн
Регистрация
28 Авг 2020
Сообщения
232
Реакции[?]
510
Поинты[?]
302K
К сожалению, он обязательно будет зацикливаться. Лично я сделаю это в «Gamemode» через «Event Post Login». Я думаю, что каждый раз, когда игрок подключается, необходимо вызывать цикл и для каждого «контроллера игрока» отправлять персонажа клиента на сервер, который отправит его обратно другим клиентам.

1635595273767.png

1635595389918.png
 
Пользователь
Статус
Оффлайн
Регистрация
28 Авг 2020
Сообщения
232
Реакции[?]
510
Поинты[?]
302K
Это сработало? Я думаю, это должно быть хорошо, но если когда-нибудь это не сработает, возможно, вам придется выполнить код, указанный выше, в «Player Character»
 
Пользователь
Статус
Оффлайн
Регистрация
12 Сен 2020
Сообщения
86
Реакции[?]
40
Поинты[?]
2K
Это сработало? Я думаю, это должно быть хорошо, но если когда-нибудь это не сработает, возможно, вам придется выполнить код, указанный выше, в «Player Character»
Перепробовал много способов, в том числе то что ты скинул.
Единственная проблема в том, что клиент не видит что у сервера поменялся skeletal mesh.
В остальном все в порядке,сервер видит всех с измененным skeletal mesh(себя в том числе), клиент видит только всех клиентов c измененным skeletal mesh кроме сервера.
 
Пользователь
Статус
Оффлайн
Регистрация
28 Авг 2020
Сообщения
232
Реакции[?]
510
Поинты[?]
302K
Хорошо, я думаю, это должно быть из «Get Player Character». Индекс 0 может быть проблематичным. Лучше всего было бы использовать код, который я показал вам выше, в «Player Character» вместо того, чтобы делать это в «Player Controller». Вы должны добавить «event» в «Контроллер игрока», которое относится к «Character».
 
Похожие темы
Сверху Снизу