Photon Fusion 2

探索如何使用来自 Fusion 2 小行星示例arrow-up-right.

✔️ 准备工作

在开始之前,您需要:

⚡ 部署并连接

1. 在 Edgegap 部署服务器

☑️ 要开始,您需要 创建一个 Edgegap 免费帐户arrow-up-right。无需信用卡。

☑️ 为您的应用创建一个新的应用版本arrow-up-right,选择 Fusion 2 小行星示例。

☑️ 在 Unity 中打开您的新项目。

☑️ 导航到 Tools / Edgegap Hosting,然后到第 6 步。 在 Edgegap 部署服务器。

☑️ 按下 部署到云 并且 打开您新部署的详细信息arrow-up-right.

☑️ 找到您部署的唯一一次性连接详情:

  • 主机 URL 格式为 780aa4260e83.pr.edgegap.net .

✅ 您现在可以继续下一步。

2. 从编辑器连接

☑️ 在 Unity 中打开您的新项目。

☑️ 按 ▶️ 播放 按钮以启动您的游戏客户端。

☑️ 将主机 URL(来自上一步的连接详情)作为房间名输入。

☑️ 按 下 连接 Edgegap 按钮以连接到您的服务器。

☑️ 使用第二个虚拟玩家连接, 多人游戏播放模式arrow-up-rightParrelSyncarrow-up-right.

🙌 恭喜您完成在 Edgegap 上的第一次部署!

✏️ 自定义服务器构建

circle-check

在 Photon 上创建应用

circle-info

为了使初始演示更简单,我们使用了 Edgegap 所拥有的 Photon Cloud 免费层帐户。

☑️ 创建 Photon 免费帐户arrow-up-right.

☑️ 在 Photon 上创建一个应用arrow-up-right:

  • 多人游戏,

  • Fusion Photon SDK,

  • Fusion 2 SDK 版本。

☑️ 在以下格式中找到您的应用 ID 85314a99-56fc-4ab3-ba26-50efca09f303 .

☑️ 在 Tools / Fusion / Fusion Hub(Alt + F)下的 Photon 设置中输入您的 ID。

将 Fusion 2 项目与 Edgegap 集成

circle-check
circle-exclamation

游戏客户端将通过 Photon Fusion 2 arrow-up-right会话(房间) arrow-up-right功能arrow-up-right.

您的游戏服务器需要在调用时将其 IP 地址和外部端口与会话名称一起注册, _runnerInstance.StartGame(StartGameArgs args):

  • 使用 GameMode.Server 以确保您的连接不会通过 Photon Cloud 进行中继(会增加延迟),

  • 使用 Fusion 的 NetAddress.CreateFromIpPort 方法,

  • 提供服务器的 IP 地址: Environment.GetEnvironmentVariable("ARBITRIUM_PUBLIC_IP")

  • 提供服务器的外部端口: Environment.GetEnvironmentVariable("ARBITRIUM_PORT_GAMEPORT_EXTERNAL")

将 Edgegap 部署主机 URL 用作会话名:

  • 在游戏服务器中,通过以下方式获取: $"{Environment.GetEnvironmentVariable("ARBITRIUM_REQUEST_ID")}.pr.edgegap.net"

  • 在测试游戏客户端时,从仪表板 - 部署详情页面 / 主机 URL 获取它

  • 在游戏客户端上线时,从以下位置获取它 匹配/票证分配/fqdn:

故障排除

chevron-right游戏不存在 (32758)hashtag
  • Photon 房间要求玩家连接到部署所在的 Photon Cloud 区域。通过仪表板部署使用的是随机化的玩家 IP。

  • 您可能需要在地图上找到部署的位置,并在 Assets / Photon / Fusion / Resources / PhotonAppSettings.asset 中将您的游戏客户端配置为匹配的 Photon Cloud 区域arrow-up-right.

  • Edgegap 尽可能部署在靠近玩家的位置 当使用我们的 插件API 因此在生产环境中,不需要设置 Photon Cloud 区域。

最后更新于

这有帮助吗?