Choose your operating system:
Windows
macOS
Linux
在编辑器中运行(Play In Editor) 支持多个环境,因此,你可以测试联网游戏。编辑器会在已装入的UE4实例中生成多个环境,这可以缩短迭代时间,并 允许你调试每个环境的 蓝图 。
设置联网测试
在 关卡编辑器工具栏 或 蓝图编辑器工具栏 中的 游戏位置(Play In) 下拉菜单中,你可以设置在开始 在编辑器中运行 会话时要创建多少个客户端环境。 另外,你还可以指定是否运行专用的服务器。
客户端数目(Number of Clients) 字段允许你指定要测试的玩家总数。如果设置为1,并且未选中 运行专用服务器(Run Dedicated Server) 复选框, 那么 在编辑器中游戏 会话将允许你测试非联网的单机游戏。
此下拉菜单中提供的另一个基本联网选项是 运行专用服务器(Run Dedicated Server) 复选框。如果选中此项,那么将启动"专用服务器"环境,但是没有专用服务器的显示或本地玩家。 使用专用服务器意味着客户端都不会作为侦听服务器来运行。专用服务器让你能够查找仅限于专用服务器的错误,例如依赖于本地玩家的代码。对于功能依赖于服务器和客户端的 蓝图 , 简单的测试配置是将 玩家数(Number of Players) 设置为 1,并将 运行专用服务器(Run Dedicated Server) 设置为 true 。只有一个窗口用于测试游戏,但其具备连接到专用服务器的客户端的完整功能。
设置这些选项后,请选择你喜欢的 在编辑器中游戏 模式开始测试游戏。如果你有多个客户端环境,并且为 在编辑器中游戏 会话选择 视口(Viewport) 显示类型,那么将在视口中显示一个客户端环境,而所有其他客户端环境都将显示在新窗口中。以下示例图展示了使用4个玩家和专用服务器进行测试。
点击查看大图:
你可以使用 Shift+Tab 和 Control+Tab 在客户端窗口之间循环切换焦点。
高级设置
客户端环境数目以及是否使用专用服务器也可以在 关卡编辑器——游戏位置设置窗口 中设置。在此处, 你还可以指定要发送给预览会话的任何命令行选项,并且还能通过取消选中 使用单个进程(Use Single Process) 复选框来恢复先前的联网 在编辑器中游戏 行为。
设置 |
描述 |
---|---|
启动独立服务器(Launch Separate Server) |
启动一个单独的服务器,即便网络模式不需要它。这允许你通过让离线游戏连接服务器,来测试离线服务器的工作流程。 |
游戏网络模式(Play Net Mode) |
设置PIE会话使用的网络模式。
|
在单个进程下运行(Run Under One Process) |
在一个单一的UE4实例下生成多人游戏窗口。这样加载速度会快很多,但有可能出现更多问题。 |
启用网络模拟(Enable Network Emulation) |
在启动游戏时应用所选的网络模拟设置,用于测试你的游戏如何处理网络问题。
|
客户端(Client) |
启动游戏时应用所选的客户端设置。
|
服务器(Server) |
启动游戏时,应用选定的服务器设置:
|
调试蓝图
现在,在多环境场景中运行时, 蓝图编辑器 将提供一个额外的下拉菜单,用于选择要调试的环境:
环境列表将对Actor列表中的Actor进行过滤。例如,如果选择"全部环境",那么你将在另一个下拉列表中看到每个环境中的Actor。如果选择其他环境中的某个环境,那么你将只看到该环境实例中的Actor。
这也会影响断点。例如,如果将调试环境设置为客户端1,那么断点只会在客户端1环境中的Actor上触发。
通过查看窗口标题,你可以看到预览窗口的客户端数目。例如,在以上联网游戏图像中,有一个标题为 ShooterGame Game Preview Client 1(64bit/PCD3D_SM5) 的窗口。
如果选择所有环境(All Worlds),那么任何环境都可以触发断点。断点触发时,蓝图编辑器将显示所调试的环境: