专用服务器优化
Provides information about optimizing the build with default and manual optimizations to reduce resource utilization.
阅读时间5 分钟最后更新于 1 个月前
专用服务器构建目标为联网应用程序执行优化。默认情况下,构建目标会自动应用一些优化,而其他优化是可选的,因为它们的影响取决于游戏的实现方式。
自动优化
默认情况下,专用服务器构建目标执行以下优化:
音频子系统
光照线程
专用服务器构建目标会删除与光照相关的进程线程,因为无需在服务器构建中渲染光照。
播放器循环回调
专用服务器构建目标会禁用以下播放器循环回调,因为服务器构建不需要这些回调。
- 的播放器更新循环注册
SendMouseEvents - 的播放器更新循环注册
UpdateAllRenderers - 的播放器更新循环注册
PlayerUpdateCanvases - 所有音频回调(例如 )的播放器更新循环注册
UpdateAudio - 所有 UI 回调(例如 )的播放器更新循环注册
UIElementsUpdatePanels - 所有输入回调(例如 )的播放器更新循环注册
UpdateInputManager
仅限 GPU 的资源
专用服务器构建目标会删除服务器不需要的纯 GPU 资源,例如纹理的纹理像素数据和网格顶点数据。构建目标会保留具有 CPU 读/写访问权限的资源以及资源文件夹中的资源。
在禁用 CPU 读/写访问权限的情况下导入的纹理和网格只能由 GPU 访问,而 CPU 无法访问。由于专用服务器构建目标不会初始化图形设备,因此无需包含此数据。排除此数据会降低可执行文件的内存使用量。
请参阅以下列表,详细了解专用服务器构建目标删除和保留的资产。
删除:
- 禁用了 CPU 读/写访问权限的纹理。
- 禁用了 CPU 读/写访问权限的网格的顶点数据。
保留:
- 启用了 CPU 读/写访问权限的纹理。
- 启用了 CPU 读/写访问权限的网格的顶点数据。
- 受保护资源文件夹中的资源。
- 纹理元数据(例如纹理大小值)。
- 即使禁用了 CPU 读/写权限,CPU 上运行的内部系统也需要的网格数据(例如物理系统)。
注意:要了解有关 CPU 读/写访问权限的更多信息,请参阅 Texture.isReadable 和 Mesh.isReadable。
其他优化
您还可以通过播放器设置 (Player Settings) 窗口中的 Enable Dedicated Server Optimizations 属性应用其他优化。这些优化会删除着色器和字体等资产。但是,如果在游戏实现过程中引用了删除的资产,则应用这些优化可能会导致出现问题。
删除的资源:
- 着色器
- 字体
除了通过专用服务器构建目标应用的自动优化之外,还可以手动应用以下特定于实现过程的优化。
- 使用条件编译可根据构建目标选择性地包含和排除代码。
- 通过类实现将特定于玩家的代码和特定于服务器的代码分开。
- 在服务器构建中删除 PlayerLoop 中的其他项。请参阅 PlayerLoop 和 PlayerLoopSystem。