Games

Создайте готовую к производству многопользовательскую игру с помощью Netcode for GameObjects

SAMUEL BELLOMO Netcode Engineer
Apr 5, 2023|5 Мин
Создайте готовую к производству многопользовательскую игру с помощью Netcode for GameObjects
Эта веб-страница была переведена с помощью машинного перевода для вашего удобства. Мы не можем гарантировать точность или надежность переведенного контента. Если у вас есть вопросы о точности переведенного контента, обращайтесь к официальной английской версии веб-страницы.

Вы создаете кооперативную многопользовательскую игру с помощью Unity? У нас есть для вас идеальный ресурс по запросу: Серия вебинаров из четырех частей от команды Multiplayer теперь доступна на YouTube. В этой серии мы погрузимся в Boss Room чтобы узнать, как можно создать готовую к производству многопользовательскую игру с помощью Unity и Netcode for GameObjects.

1. Понимание основ реализации игры и полномочий сервера

Создание многопользовательских игр - это не только использование правильных API. В первом эпизоде серии рассказывается о лучших практиках и даются советы по внедрению такой хаотичной технологии, как интернет, между игроками при разработке многопользовательской игры.

В первом эпизоде мы расскажем о том, как:

  • Что такое Netcode for GameObjects (NGO) и Unity Gaming Services (UGS)?
  • Сетевые переменные против RPC и причины выбора для каждой функции
  • Авторитет и почему мы выбрали серверный авторитет для большей части нашего геймплея
  • Движения и альтернативные модели, такие как Client Authority для борьбы с отставанием, а также трюки оптимизации для движений на основе поиска пути
  • Базовая реализация игры и то, как мы использовали State (netvar, network list) и RPC
2. Создайте способности персонажей, спаунинг и объекты сцены

Во втором эпизоде рассказывается о реализации способностей персонажей в Boss Room и о том, как подходить к реализации способностей в своей игре.

Мы погружаемся в:

  • Общий порядок реализации управляемых сервером способностей
  • Надежность и что значит ненадежность RPC
  • Атаки ближнего боя и предвидение проблем с анимацией
  • Функциональность танкового щита и взаимодействие с окружающей средой
  • Выстрелы из лука и область действия (AOE), которые требуют отслеживания входов в течение времени только на стороне клиента
  • Маг огня и использование пропускной способности
  • Общая архитектура нашей системы способностей

Мы также рассматриваем:

  • Динамически порождаемые объекты
  • Порождение статичных объектов, размещенных в сцене
  • Порождение разрушаемых объектов в сцене
  • Уроки, связанные с зомби-импами при позднем вступлении
  • Пользовательская логика спавна, например, бассейны, и как интегрировать их с NGO
3. Сделайте свою многопользовательскую игру адаптированной к игрокам

На третьем занятии мы рассмотрим еще несколько деталей реализации игры, а затем погрузимся в процесс создания многопользовательской игры, которая будет удобна для игроков.

Мы исследуем:

  • Взаимодействие с физикой, объекты и воспитание детей, сцены и управление сценами
  • Использование Relay и Lobby для выхода в онлайн и почему нельзя использовать NGO для присоединения игроков
  • Синхронизация экрана выбора персонажа между игроками с помощью НГО и пользовательской сериализации
  • Обеспечение устойчивости игры к приходу и уходу игроков, потоки повторных подключений, поддержка поздних подключений, отключений и тайм-аутов
  • Обработка условий гонки и различные тесты для выполнения
4. Оптимизация пропускной способности и процессов gamedev

В четвертом и последнем занятии цикла мы рассмотрим лучшие практики разработки игр для многопользовательских игр.

В этом эпизоде рассказывается:

  • Оптимизация полосы пропускания и инструменты для профилирования, оптимизация NetworkTransforms и другие советы
  • Инструменты отладки, такие как симуляторы состояния сети, мониторинг статистики и пользовательские потоки отладки
  • Архитектура проекта (система действий, архитектура игроков и т.д.)
  • Будущее Boss Room
Начните разрабатывать многопользовательские игры

Смотреть сериал? Поделитесь своими отзывами, чтобы в будущем мы могли планировать еще более качественные занятия.

Если вы готовы приступить к реализации своего следующего многопользовательского проекта с помощью Unity и Netcode for GameObjects, вот несколько полезных ресурсов, которые помогут вам начать:

У вас есть вопросы или отзывы о разработке многопользовательских игр в Unity? Не стесняйтесь присоединиться к обсуждению в Discord или на форумах.