Photon Fusion 2

Узнайте, как размещать проекты Unity на Edgegap, используя техники из Fusion 2 Asteroids Samplearrow-up-right.

✔️ Подготовка

Перед началом вам потребуется:

⚡ Развернуть и подключиться

1. Разверните сервер на Edgegap

☑️ Чтобы начать, вам нужно создать бесплатную учетную запись на Edgegaparrow-up-right. Кредитная карта не требуется.

☑️ Создайте новую версию приложения для вашего приложенияarrow-up-right, выберите Fusion 2 Asteroids Sample.

☑️ Откройте ваш новый проект в Unity.

☑️ Перейдите в Tools / Edgegap Hosting, затем к шагу 6. Разверните сервер на Edgegap.

☑️ Нажмите Deploy to cloud и откройте детали вашего нового развертыванияarrow-up-right.

☑️ Найдите уникальные одноразовые данные для подключения к развертыванию:

  • Host URL в формате 780aa4260e83.pr.edgegap.net .

✅ Теперь вы можете перейти к следующему шагу.

2. Подключение из редактора

☑️ Откройте ваш новый проект в Unity.

☑️ Нажмите кнопку ▶️ Play, чтобы запустить клиент игры.

☑️ Введите Host URL (данные подключения из предыдущего шага) в качестве имени комнаты.

☑️ Нажмите кнопку Start Edgegap, чтобы подключиться к вашему серверу.

☑️ Подключите второго виртуального игрока с помощью Multiplayer Play Modearrow-up-right или ParrelSyncarrow-up-right.

🙌 Поздравляем с вашим первым развертыванием на Edgegap!

✏️ Настройка сборки сервера

circle-check

Создание приложения в Photon

circle-info

Чтобы упростить первоначальную демонстрацию, мы использовали бесплатный уровень Photon Cloud, принадлежащий Edgegap.

☑️ Создайте бесплатную учетную запись в Photonarrow-up-right.

☑️ Создайте приложение в Photonarrow-up-right:

  • Многопользовательская игра,

  • Fusion Photon SDK,

  • Fusion 2 версия SDK.

☑️ Найдите ваш Application ID в формате 85314a99-56fc-4ab3-ba26-50efca09f303 .

☑️ Введите ваш ID в настройках Photon в Tools / Fusion / Fusion Hub (Alt + F).

Интеграция проекта Fusion 2 с Edgegap

circle-check
circle-exclamation

Клиенты игры будут подключаться к игровым серверам через Photon Fusion 2 arrow-up-rightSession (комната) arrow-up-rightфункцияarrow-up-right.

Ваш игровой сервер должен зарегистрировать свой IP-адрес и внешний порт с именем сессии при вызове _runnerInstance.StartGame(StartGameArgs args):

  • используйте GameMode.Server чтобы гарантировать, что ваше соединение не будет ретранслироваться через Photon Cloud (увеличивает задержку),

  • используйте NetAddress.CreateFromIpPort метод из Fusion,

  • укажите IP-адрес сервера: Environment.GetEnvironmentVariable("ARBITRIUM_PUBLIC_IP")

  • укажите внешний порт сервера: Environment.GetEnvironmentVariable("ARBITRIUM_PORT_GAMEPORT_EXTERNAL")

Используйте Deployment Host URL Edgegap в качестве имени сессии:

  • в игровом сервере получите его с помощью $"{Environment.GetEnvironmentVariable("ARBITRIUM_REQUEST_ID")}.pr.edgegap.net"

  • при тестировании игрового клиента получите его с панели управления - страница деталей развертывания / Host URL

  • в живой игре клиент получает его из matchmaking / назначение билета / fqdn:

Устранение неполадок

chevron-rightИгра не существует (32758)hashtag
  • Photon комнаты требуют, чтобы игрок подключался к региону Photon Cloud, где расположено развертывание. Развертывание из панели управления использует случайный IP игрока.

  • Вам может понадобиться найти расположение развертывания на карте и настроить ваш игровой клиент в Assets / Photon / Fusion / Resources / PhotonAppSettings.asset с соответствующим регион Photon Cloudarrow-up-right.

  • Edgegap развертывает как можно ближе к игроку при использовании наших плагинов или API так что в продакшене настройка региона Photon Cloud не требуется.

Последнее обновление

Это было полезно?