Photon Fusion 2
Узнайте, как размещать проекты Unity на Edgegap, используя техники из примера Fusion 2 Asteroids Sample.
✔️ Подготовка
Перед началом вам понадобится:
Unity 6 - загрузите через Unity Hub,
Проект-пример Fusion 2 Asteroids Sample (изменён для Edgegap) - скачать с GitHub.
⚡ Развернуть и подключить
1. Разверните сервер на Edgegap
☑️ Чтобы начать, вам нужно создать бесплатный аккаунт в Edgegap. Кредитная карта не требуется.
☑️ Создайте новую версию приложения для своего приложения, выберите Fusion 2 Asteroids Sample.
☑️ Откройте ваш новый проект в Unity.
☑️ Перейдите в Tools / Edgegap Hosting, затем к шагу 6. Разверните сервер на Edgegap.
☑️ Нажмите Deploy to cloud и откройте детали нового развертывания.
☑️ Найдите уникальные одноразовые данные подключения вашего развертывания:
Host URL в формате
780aa4260e83.pr.edgegap.net.
✅ Теперь вы можете перейти к следующему шагу.
2. Подключение из редактора
☑️ Откройте ваш новый проект в Unity.
☑️ Нажмите кнопку ▶️ Play, чтобы запустить игровой клиент.
☑️ Введите Host URL (данные подключения из предыдущего шага) как имя комнаты.
☑️ Нажмите кнопку Start Edgegap, чтобы подключиться к вашему серверу.
☑️ Подключите второго виртуального игрока с помощью Multiplayer Play Mode или ParrelSync.
🙌 Поздравляем с вашим первым развертыванием на Edgegap!
✏️ Настройка сборки сервера
См. Unity для Unity, чтобы узнать, как собирать и настраивать серверы.
Создайте приложение в Photon
☑️ Создайте бесплатный аккаунт в Photon.
☑️ Создайте приложение в Photon:
Многопользовательская игра,FusionSDK Photon,Fusion 2версия SDK.
☑️ Найдите ID вашего приложения в формате 85314a99-56fc-4ab3-ba26-50efca09f303 .
☑️ Введите свой ID в Photon Settings в разделе Tools / Fusion / Fusion Hub (Alt + F).
Интеграция проекта Fusion 2 с Edgegap
См. EdgegapServerManager.cs скрипт с примером интеграции Fusion 2 с Edgegap.
Ваш NetworkProjectConfig должен использовать Peer Mode = Single (Ded. Server), а не Multiple (Client-Host)!
Игровые клиенты будут подключаться к игровым серверам через Photon Fusion 2 сессию (комнату) функцию.
Ваш игровой сервер должен зарегистрировать свой IP-адрес и внешний порт вместе с именем сессии при вызове _runnerInstance.StartGame(StartGameArgs args):
используйте
GameMode.Serverчтобы ваше соединение не проходило через Photon Cloud (это добавляет задержку),используйте
NetAddress.CreateFromIpPortметод из Fusion,предоставьте IP-адрес сервера:
Environment.GetEnvironmentVariable("ARBITRIUM_PUBLIC_IP")предоставьте внешний порт сервера:
Environment.GetEnvironmentVariable("ARBITRIUM_PORT_GAMEPORT_EXTERNAL")это имя сопоставления портов по умолчанию, если вы используете наш плагин Unity для упаковки вашего сервера.
Используйте Host URL развертывания Edgegap в качестве имени сессии:
в игровом сервере получите его с помощью
$"{Environment.GetEnvironmentVariable(\"ARBITRIUM_REQUEST_ID\")}.pr.edgegap.net"при тестировании игрового клиента получите его с панели управления — на странице деталей развертывания / Host URL
создавайте развертывания для тестирования из нашего плагина быстрого старта хостинга,
в рабочем игровом клиенте получите его из сопоставления / назначения билета / fqdn:
см. также начало работы с Matchmaking.
Устранение неполадок
Последнее обновление
Это было полезно?

