Создание многопользовательских игр с Unity Netcode
Решения NetCode для казуальных кооперативных игр
Пакет Netcode for GameObjects предназначен для разработки казуальных кооперативных многопользовательских игр. Синхронизируйте сцены и данные GameObjects между множеством клиентов и платформ по модели «авторитарный клиент» или «авторитарный сервер». Unity поможет вам оптимизировать свои многопользовательские игры, предоставив в ваше распоряжение инструменты для профилирования сети как в игровом режиме, так и во время выполнения.
Сервис Relay, который входит в состав Unity Gaming Services, — это экономичное пиринговое решение-компаньон для масштабирования игровых тестов и сборки многопользовательской игры без вложений в выделенный хостинг.
Решения NetCode для соревновательных экшен-игр
Пакет Netcode for Entities на базе ECS — ваш помощник в создании соревновательных экшен-игр с высокой производительностью и масштабируемостью. Разрабатывайте амбициозные игровые процессы на полномочном сервере с прогнозированием, интерполяцией и компенсацией задержек.
Снижайте затраты, используя среду сборки на выделенном сервере, которая может автоматически удалять ненужные ассеты. Развертывайте свои проекты на Multiplay Hosting: этот сервис в составе Unity Gaming Services обеспечит гибкость и масштабируемость вашей игровой инфраструктуры, чтобы вы могли сосредоточиться на создании впечатлений для своих игроков.
Откройте новые возможности для игры с Unity Gaming Services
Создайте небольшую кооперативную игру с Netcode for GameObjects и поддержкой Relay и Lobby для подключения игроков.
Не забывайте и о других решениях Unity для разработки, поддержки и развития вашей игры, которые проверены в крупнейших игровых проектах.
Детальный контроль над транспортным слоем
Пакет Unity Transport — это независимая от сетевого кода реализация низкоуровневого сетевого уровня, ориентированная на производительность и надежность. Это современная, защищенная и портируемая библиотека транспортного уровня, которая дополняет в традиционный протокол UDP расширенные функции, включая поддержку Unity Relay, UnityTLS, а также конвейеры.
И в Netcode for GameObjects, и в Netcode for Entities UTP используется в качестве транспорта по умолчанию. Тем не менее разработчики, желающие иметь детальный контроль над сетью, могут использовать UTP в качестве самостоятельной библиотеки.
Примеры NetCode для освоения разработки сетевых компонентов
Узнайте больше о разработке многопользовательских игр, изучая наши примеры кода.
- Boss Room — это 3D-казуальная кооперативная игра с кодом продакшн-уровня, разработанная с использованием Netcode for GameObjects и интегрированная с Lobby и Relay.
- Galactic Kittens — это пример кооперативной приключенческой 2D-игры, разработанный с использованием Netcode for GameObjects и иллюстрирующий синхронизацию сетевых объектов.
- Network Racing — это динамичный пример соревновательной гоночной игры, разработанный с использованием Netcode for Entities и иллюстрирующий прогнозирование, интерполяцию и компенсацию задержек на стороне клиента.
Учитесь и творите вместе с сообществом
Как говорится, один в поле не воин, поэтому мы рекомендуем вам присоединиться! Изучайте документацию, технические примеры и контент и начинайте работу.
Кроме того, наши разработчики готовы ответить на ваши вопросы на форуме Multiplayer, в Discord и на GitHub.
Узнайте подробнее о многопользовательской подсистеме
Репозиторий Bitesize Samples предоставляет серию примеров кода в виде модулей для использования в играх и лучшего понимания Netcode for GameObjects (Netcode).
Получите доступ к этому обучающему материалу, чтобы Acquire фундаментальные знания о Netcode for GameObjects и о том, как использовать его при разработке казуальной кооперативной Multiplayer игры.
Этот шаблон служит отправной точкой для создания и отправки проекта Multiplayer с помощью Netcode for GameObjects и игровых сервисов Unity.
Смотрите этот вебинар, посвященный подробному изучению демонстрации Megacity Metro, чтобы узнать, как привлечь сущности в ваш проект вместе с игровыми сервисами Unity.
Установите решения Unity для многопользовательских игр, чтобы начать свой следующий проект с высокого старта.