Version: 2017.1
集群渲染
集群渲染的输入

部署 Unity 集群

构建播放器

构建过程中不涉及特殊技术。只要使用支持集群的 Editor(需要特殊许可证)构建播放器,播放器就将具有支持集群的功能。

启动集群

将播放器的副本分发到主节点机器以及每台客户端节点机器。强烈建议始终使用相同的播放器文件,以确保模拟不会发生变化。为每个节点准备一个批处理文件,以便使用以下命令行参数启动应用程序。

这些参数触发播放器以 Unity 集群模式运行:

主节点

-server <number of clients> *:<pubport> *:* <timeout>

  • 将此应用程序作为集群网络的主节点运行。
  • 指定连接到主节点的客户端节点数。这不包括主节点。在连接的客户端节点数量达到指定的数量之前,主节点不会继续。
  • timeout 是可选参数。此参数可用于告诉服务器在判定网络断开连接之前等待来自客户端的信号的时间。

客户端节点

-client <index> <masterip>:<pubport> <clientip>:<clientport> <timeout>

这会将此应用程序作为集群网络中的客户端节点之一运行。

  • index 是此客户端在网络中的节点索引。应为每个客户端节点分配唯一索引。索引通常与节点在显示网格中的位置有关。
  • masterip 是主节点机器的 IP 地址。不要使用 localhost,它无法正确解析。
  • clientipclientport 是客户端机器的 IP 地址和端口。使用 * 进行自动分配,通常情况下都会这么做。
  • pubport 必须与主节点的设置相同。
  • timeout 是可选参数。此参数可用于告诉客户端在判定服务器断开网络连接之前等待服务器信号的时间。

其他参数

-force-opengl (windows only) Make the editor use OpenGL for rendering, even if Direct3D is available. Normally Direct3D is used but OpenGL is used if Direct3D 9.0c is not available.
-logFile <pathname> Specify where the Editor or Windows/Linux standalone log file will be written. Handy when user test the cluster rendering locally.

本地测试

可以通过在一台计算机上运行项目的多个实例(使用适当的命令行参数启动每个实例,如上所示)来测试集群渲染。

集群渲染
集群渲染的输入