
WebGL / HTML5 - 免费多人网络游戏服务器与托管 - 教程(完整)
你好,
在本视频中,我们将逐步介绍如何使用Edgegap插件为任何多玩家WebGL / HTML5网络游戏在Unity中设置游戏服务器托管,从而在几分钟内使您的游戏上线并在全球范围内可玩。
让我们开始吧!
章节 1: 要求
在您可以在线发布您的WebGL游戏之前,有三个要求需要确保一切正常。
首先,我们建议使用netcode。虽然不是强制性的,但它可以使事情变得更简单,因为它使您无需编写和实现自己的网络解决方案即可使用传输。在此示例中,我们将使用Mirror Networking。确保从Unity资产商店下载最新版本。说明中有一个直接链接。我们还将使用Mirror的一个示例项目进行演示。
从商店下载Mirror后,通过从顶部菜单中选择“窗口”并选择“软件包管理器”来导入。然后从下拉菜单中选择“我的资产”以找到Mirror插件。对于新用户,我们强烈建议观看精彩的社区教程,以充分利用Mirror的功能。
其次,在Unity中,前往Unity的Hub,确认您在项目中安装了“Linux专用服务器构建支持”模块和“WebGL构建支持”模块。如未安装,只需点击软件包并进行安装。确保重启Unity以避免错误。
第三个也是最后一个先决条件是安装和运行Docker。它将您的游戏服务器容器化,以帮助其更快地部署和运行。如果尚未安装,可以观看我们的Docker安装视频,或访问Docker官网并按照安装步骤进行操作。这很简单,只需几分钟。
章节 3: 编辑您的WebGL项目
在您项目的资产中,打开您要使用的游戏场景。在本例中,我们的场景位于“Mirror > Examples > Tanks > Scenes”下。
选定场景后,点击“网络管理器”游戏对象。其检查器选项卡会出现,在我们的实例中位于右侧。
向下滚动,直到找到“KCP传输”组件并将其移除。用“Simple Web Transport”替换,您可以从您的资产中拖放到“Mirror > Transports > Simple Web”下。
请注意此处的端口值,因为我们需要它用于Edgegap插件。
最后,确保更新“网络管理器”脚本的传输值,并使用该新组件。
此外,确保在“网络管理器”脚本中启用“自动启动服务器构建”选项。
章节 2: 使用Edgegap进行游戏服务器托管
现在,让我们使用Edgegap插件让您的游戏上线。
首先,从导航栏的“Edgegap”选项中打开Edgegap插件,然后选择“Edgegap托管”。
要使其运行,您必须生成一个令牌。为此,您必须创建一个Edgegap账户。点击“获取令牌”按钮,这将打开您的浏览器。
注册是免费的,仅需几秒钟。
首先,在底部选择“开始”,然后在登录界面中输入您的电子邮件和密码,并选择我们的条款。您将立即收到验证邮件。点击“确认您的邮件”验证您的账户。最后,输入您的组织名称并确认。
这是Edgegap的应用程序仪表板。我们强烈建议您使用导览进行探索,但在本视频中我们将跳过此步骤。一个带有您唯一OneClick令牌的弹出窗口会自动出现。只需点击剪贴板图标复制并直接粘贴到插件的文本框中。
然后,选择验证以确认令牌有效。“应用程序信息”选项卡现在会自动打开。
如果您已经在我们的平台上有应用程序,请在文本框中输入其名称并将其加载为现有应用程序。如果没有,在本教程中,只需输入您项目的名称。必须为小写字母,且不含空格。
“创建应用程序”按钮现在已启用。选择它。这将打开“容器注册表”和“部署”选项卡。
容器注册表是您的游戏服务器容器存储的地方。您只需确保端口和协议类型与您的netcode传输一致,以确保服务器能够正常监听连接。
在此示例中,请确保端口值与“Simple Web Transport”组件中的相同。对于协议类型,选择“WS”,即Web Socket,用于WebGL项目。
值得注意的是,Edgegap插件还会自动设置TLS升级选项以确保连接安全。
“新版本标签”指的是您服务器的唯一版本。此字段需要您手动输入。我们建议在更新您的游戏服务器时更改此值。
对于高级用户,Edgegap提供使用“自定义容器注册表”的选项。在本教程中,我们将使用Edgegap的默认注册表。
倒数第二步是选择“构建并推送”。这将自动将项目编译为专用Linux服务器,然后创建一个Docker容器并将其部署到Edgegap的注册表中。
最后一步是创建一个新部署。在“状态”下,您会看到其进度。一旦准备就绪,会显示一个URL。通过点击剪贴板按钮复制,然后在网络管理器的检查器选项卡中粘贴信息。在“网络信息”下,用粘贴的URL替换当前的“网络地址”。确保删除端口号和冒号。
在“服务器设置”部分的“端口”字段中输入端口值,并确保在“客户端设置”部分中启用“客户端使用WSS”选项。
取消选择“自动启动服务器构建”选项,因为这允许您直接从Unity的编辑器中以客户端身份进行连接。
最后,通过点击编辑器顶部的播放按钮开始您的游戏场景。
恭喜,您的项目现在已准备好让世界来玩!
章节 3: 测试
显然,首先测试一下!
确保在HUD中正确设置了数值,然后点击“客户端”。游戏将连接到我们使用Edgegap插件部署的服务器。
确认工作正常后,您可以关闭游戏并用插件停止部署。
如果您想在Itch.io上发布您的游戏,只需转到“构建设置”,选择“WebGL”平台,然后在“项目设置”的“玩家 > 发布设置”下,确保将“压缩格式”设置为“G ZIP”并启用“解压回退”选项。
使用“Control + S”键盘快捷键保存项目。
然后构建您的项目,并压缩您的文件然后上传到Itch.io!
章节 4: 结论
这就是本教程的全部内容!
欢迎加入Edgegap的Discord 社区,与像您一样的游戏开发者一起开发和分享。
如果您想添加一个匹配器,请务必观看我们的教程视频。
感谢观看!
