Version: 6000.3
语言: 中文
优化 Web 构建的推荐图形设置
优化 Web 构建的推荐质量设置

优化 Web 构建的推荐播放器设置

使用以下推荐的播放器设置来优化 Unity Web 平台的构建。

播放器设置快速参考

在 编辑(Edit) > 项目设置(Project settings) > 播放器(Player) 下找到这些设置。有关每个设置的更多信息,请参阅玩家设置设置,用于为 Unity 构建的最终游戏设置各种特定于玩家的选项。更多信息
请参阅术语表
.

设置 推荐设置 描述
API 兼容性级别 .NET 标准 2.1 产生更小的构建。
IL2CPP 代码生成 针对代码大小和构建时间进行优化 生成针对构建大小和迭代优化的代码。
管理剥离级别 Unity 执行高级别的托管剥离以创建更小的构建。

“发布设置”部分中配置以下建议设置:

设置 推荐设置 描述
压缩格式 布罗特利 Brotli 压缩的文件更小。
数据缓存 启用 运行速度更快,因为缓存的数据不需要在后续运行中再次下载(除非内容已更改)。
调试符号 关闭 调试符号可能会减慢应用程序的速度。
启用例外 没有 改为启用 Target WebAssembly 2023 以获得无开销的异常。
目标 WebAssembly 2023 使 2023 年网络大会功能集 功能集是相关包的集合,可用于在 Unity 编辑器中实现特定结果。您可以直接在 Unity 的包管理器中管理功能集。更多信息
请参阅术语表
包含有助于优化项目的功能。
最大内存大小 (MB) 输入所需的内存量(以 MB 为单位)。 Unity Web 支持高达 4096 MB 的内存用于构建。

API 兼容性级别

使用 API 兼容性级别设置选择可在项目中使用的 .NET API。建议的设置是 .Net Standard 2.1,因为此设置生成较小的版本并具有跨平台支持。但是,您需要检查您的平台是否完全支持 .Net Standard 2.1。有关其他选项,请参阅 Web 播放器设置

更改 API 兼容性级别

要改为通过脚本更改 API 兼容性级别,请将此代码添加到您的脚本一段代码,允许您创建自己的组件、触发游戏事件、随时间修改组件属性以及以您喜欢的任何方式响应用户输入。更多信息
请参阅术语表
:

PlayerSettings.SetApiCompatibilityLevel(namedBuildTarget, ApiCompatibilityLevel.NET_2_0);

IL2CPP 代码生成

使用IL2CPP Unity 开发的脚本后端,在为某些平台构建项目时,可以将其用作 Mono 的替代方案。更多信息
请参阅术语表
代码生成
设置来配置 Unity 如何管理 IL2CPP 代码生成(如果您的项目使用 IL2CPP 脚本后端)。

建议使用“针对代码大小和生成时间进行优化”选项,因为它会创建较小的生成并生成更少的代码,从而缩短生成时间。更快的构建时间在 Web 应用程序中至关重要。但是,此设置可能会降低运行时性能。

有关详细信息,请参阅 IL2CPP 概述

通过 C 更改 IL2CPP 代码生成

要改为通过脚本启用此设置,请将以下代码添加到其中一个脚本中:

PlayerSettings.SetIl2CppCodeGeneration(namedBuildTarget,         
                                       Il2CppCodeGeneration.OptimizeSize);

管理剥离级别

使用托管剥离级别配置 Unity 链接器进程从项目使用的托管 DLL 中剥离未使用的代码的程度。建议的设置为“高”,因为剥离代码可以使可执行文件显着变小,这在 Web 应用程序中很重要。然而,可能的副作用可能包括:

  • 某些方法的托管代码调试可能不起作用。

  • 您可能需要维护自定义link.xml文件。

  • 某些反射代码路径的行为可能不同。

有关详细信息,请参阅托管代码剥离

通过 C 更改托管剥离级别

要改为通过脚本更改此设置,请将以下代码添加到您的其中一个脚本中:

PlayerSettings.SetManagedStrippingLevel(namedBuildTarget,     
                                        ManagedStrippingLevel.High);    

压缩格式

选择什么压缩一种存储数据的方法,可减少所需的存储空间量。请参阅纹理压缩动画压缩音频压缩构建压缩
请参阅术语表
用于发布构建文件的格式。Brotli 是推荐的设置,因为它具有最佳压缩比,并且 Brotli 压缩的文件比 gzip 小。较小的文件最适合 Web 应用程序。但是,Chrome 和 Firefox 仅在用户通过 HTTPS 访问网站时才支持 Brotli。此外,尽管大多数现代服务器都支持 Brotli,但有些服务器不支持它。确保您的服务器支持 Brotli。

有关压缩格式的更多信息,请参阅部署 Web 应用程序

通过 C# 脚本更改压缩格式

要改为通过脚本启用此设置,请将以下代码添加到其中一个脚本中:

PlayerSettings.WebGL.compressionFormat = WebGLCompressionFormat.Brotli;

数据缓存

启用数据缓存,以便 Unity 在用户的计算机上缓存您的内容资产数据。数据缓存可以使应用程序运行得更快。有关详细信息,请参阅 Web 中的缓存行为

通过 C# 脚本启用数据缓存

要改为通过脚本启用此设置,请将以下代码添加到其中一个脚本中:

PlayerSettings.WebGL.dataCaching = true;

调试符号

调试符号”设置会保留调试符号,并在发生错误时显示堆栈跟踪的原始函数名称,以便更轻松地识别错误源。建议的最佳做法是在最终发布版本上禁用调试符号,因为它会使构建变得不必要地大,并降低应用程序的速度。在开发和测试期间启用此设置,以便更轻松地识别错误来源。

通过 C# 脚本停用调试符号

要改为通过脚本停用此设置,请将以下代码添加到您的脚本之一:

PlayerSettings.WebGL.debugSymbolMode = WebGLDebugSymbolMode.Off;

启用例外

通过启用异常设置,可以选择如何在运行时处理错误。建议的最佳做法是在最终发布版本中选择“无”选项,因为此设置可提供最佳性能和最小版本。

但是,使用此选项时,引发的任何异常都会导致内容因错误而停止,因此最好在开发和测试期间启用异常。 有关更多信息,请参阅 Web 播放器设置

通过 C# 脚本停用异常

要改为通过脚本停用异常,请将以下代码添加到您的脚本之一:

PlayerSettings.WebGL.exceptionSupport = WebGLExceptionSupport.None;

目标 WebAssembly 2023

WebAssembly 2023 是一系列 WebAssembly 语言功能,可以提高性能并减小代码大小。因此,建议您启用此设置。

通过 C# 脚本启用 WebAssembly 2023

要改为通过脚本启用此设置,请将以下代码添加到其中一个脚本中:

PlayerSettings.WebGL.wasm2023 = true;
// PlayerSettings.WebGL.webAssemblyTable = true;
// PlayerSettings.WebGL.webAssemblyBigInt = true;

要启用WebAssembly.TableBigInt功能,删除第一行代码并删除注释行。

最大内存大小 (MB)

Unity 支持高达 4096 MB 的内存用于构建。对于大多数应用程序,2048 MB 的内存就足够了。但对于更复杂的实时 3D 体验,尤其是桌面浏览器,最好有更多的内存。有了更多的内存,您可以加载更丰富、更大的内存场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
请参阅术语表
更动态。

但是,在版本 119 之前的 Firefox 和 Chrome 浏览器中,超过 2048 MB 的版本存在已知错误。

通过 C# 脚本更改最大内存

要改为通过脚本更改最大内存,请将以下代码添加到脚本中,并将数字更改为首选内存大小:

PlayerSettings.WebGL.maximumMemorySize = 4096; 

其他资源

优化 Web 构建的推荐图形设置
优化 Web 构建的推荐质量设置