5

Разработка коллизий для мультиплеерной игры

Привет, пикабу! Давно не было постов о моей игре "We are vikings", а тем временем я сделал свой игровой движок с поддержкой мультиплеера и потихоньку буду рассказывать о нем и результатах. Сам мультиплеер ещё в разработке, попробывать его надеюсь можно будет через месяц-другой.

Чтож, о коллизиях!

(стоят в очереди за колбасой)

Итак, как работают коллизии в моей игре:

1. Сервер каждый тик обходит QuadTree (такая структура данных основнная на дереве позиций и "хитбоксов" юнитов) и ищет пересечения у прямоугольников. Если пересечение есть - можно рассчитывать коллизию (её может и не быть, если хитбокс это сложная фигура). В нашем случае всё просто - прямоугольники пересеклись - нужно разрешать коллизию.

2. Разрешение коллизии: для каждый прямоугольник "выталкивает" другой в направлении от своего центра.

3. Далее ECS система, отвечающая за передвижение детектит, что есть компонент типа "Толкать объект", и перемещает его на новую позицию. Важно, что это отличная от перемещений юнитов система, так как если вы например захотите переработать коллизии - то вам нужно лишь заменить эту систему, не трогая соврешенно другую логику.

4. Далее система отвечающая за передачу информации клиенту видит, что компонент типа "Толкать объект" изменился в этом тике - и сериализует (запаковывает) его в байтовый пакет для передачи по сети.

5. И в финале клиент слушает и безукоризненно применяет эти изменения в своей локальной системе, которая отвечает за позиции юнитов.

6. Система рендеринга считывает что в этот кадр позиция юнита поменялась - и перерисовывает его на экране в новом месте!

На этом все, а следить за релизами мой Hearthstone-like игры можно тут:

https://t.me/make_world

https://discord.gg/YtYa9ky33u

https://www.patreon.com/c/KonungzRage

Ну и небольшой бонус из ранней разработки коллизий)

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества