版本:Unity 6 (6000.0)
语言:English
Web 开发
与浏览器脚本交互

Web Player 设置

使用Player 设置来了解 Unity 如何构建将您的项目编译成可在特定平台或多个平台上运行的格式。 更多信息
参见 术语表
并显示最终的 Web 应用程序。有关常规Player设置的说明,请参阅Player设置。

要访问 Web Player 设置允许您为 Unity 构建的最终游戏设置各种特定于播放器的选项的设置。 更多信息
参见 术语表

  • 从 Unity 主菜单中,转到编辑 > 项目设置 > Player。将出现Player设置窗口。
  • 选择Web选项卡以查看 Web Player 设置。
Web Player settings
Web Player 设置

您可以在以下部分中找到属性的文档

注意:虽然图标面板显示在 Web Player设置中,但没有可用的图标设置,因为 Web 游戏不使用图标。

有关 Web 发布设置的更多信息,请参阅Web 构建和运行

分辨率和显示

使用分辨率和显示部分自定义屏幕在分辨率部分中的外观。

Resolution section for the Web Player platform
Web Player 平台的分辨率部分

分辨率

您可以通过编辑以下选项来自定义 Web 画布元素的屏幕模式和默认大小

设置 功能
默认画布宽度 设置 Web 画布元素的宽度。
默认画布高度 设置 Web 画布元素的高度。
在后台运行 启用此选项以允许您的内容在画布或浏览器窗口失去焦点时继续运行。

Web 模板

选择一个模板用于您的 Web 项目

  • 默认页面是一个简单的白色页面,在灰色画布上有一个加载条。
  • 最小页面仅包含运行 Web 内容所需的必要样板代码。
  • PWA页面具有一个渐进式 Web 应用通过 Web 提供的软件应用程序。它使用某些浏览器功能来创建与原生应用程序相当的用户体验。 更多信息
    参见 术语表
    ,包括 Web 清单文件和服务工作者代码。

您可以使用您自己的模板在类似于完成游戏的环境中运行您的游戏,方法是按照使用 Web 模板中的说明进行操作。

启动图像

使用虚拟现实启动图像设置选择XR一个涵盖虚拟现实 (VR)、增强现实 (AR) 和混合现实 (MR) 应用程序的总称。支持这些形式的交互式应用程序的设备可以称为 XR 设备。 更多信息
参见 术语表
显示的自定义启动图像。有关常见启动屏幕设置的信息,请参阅启动屏幕

Splash screen settings for virtual reality.
虚拟现实的启动屏幕设置。

其他设置

本节允许您自定义一系列组织到以下组中的选项

渲染

使用这些设置自定义 Unity 如何为 Web 平台渲染您的游戏。

Rendering Player settings for the Web platform
Web 平台的渲染 Player 设置
设置 功能
颜色空间 选择用于渲染的颜色空间:GammaLinear
请参阅线性渲染概述以了解两者之间的区别。
自动图形 API 禁用此选项以手动选择和重新排序图形 API。默认情况下,此选项处于启用状态,并且 Unity 包括 WebGL2.0,并使用 WebGL1.0 作为不支持 WebGL2.0 的设备的回退。
静态批处理Unity 用于在屏幕上绘制 GameObjects 的一种技术,该技术将静态(不移动)的 GameObjects 组合成大型网格,并以更快的速度渲染它们。 更多信息
参见 术语表
启用此选项以使用静态批处理。
动态批处理一个自动的 Unity 过程,它尝试将多个网格渲染为单个网格,以优化图形性能。该技术转换 CPU 上的所有 GameObject 顶点并将许多相似的顶点组合在一起。 更多信息
参见 术语表
选中此框以在您的构建中使用动态批处理(默认情况下启用)。
图形作业 启用此选项可指示 Unity 将图形任务(渲染循环)卸载到在其他 CPU 内核上运行的工作线程。使用它可以减少在主线程上花费在Camera.Render上的时间,这通常是一个瓶颈。
注意:此功能是实验性的。它可能无法为您的项目提供性能改进,并且可能会引入新的崩溃。
纹理压缩一种存储数据的方法,可以减少其所需的存储空间。请参阅纹理压缩动画压缩音频压缩构建压缩
参见 术语表
格式
选择DXTETC2ASTC以设置 Web 平台的纹理压缩3D 图形硬件需要将纹理压缩为专门的格式,这些格式针对快速纹理采样进行了优化。 更多信息
参见 术语表
格式。有关如何选择正确格式的信息,请参阅纹理压缩格式概述,并了解如何从脚本创建桌面和移动浏览器的构建,请参阅Web 中的纹理压缩
光照贴图编码 选择低质量正常质量高质量以设置光照贴图预渲染的纹理,其中包含光源对场景中静态对象的影响。光照贴图叠加在场景几何体上以创建照明效果。 更多信息
参见 术语表
编码。此设置会影响光照贴图的编码方案和压缩格式。有关更多信息,请参阅光照贴图:技术信息
HDR高动态范围
参见 术语表
立方体贴图六个方形纹理的集合,可以表示环境中的反射或几何体后面绘制的天空盒。六个正方形形成一个围绕对象的假想立方体的面;每个面都表示沿世界轴方向(上、下、左、右、前和后)的视图。 更多信息
参见 术语表
编码
选择低质量正常质量高质量以设置 HDR 立方体贴图编码。此设置会影响 HDR 立方体贴图的编码方案和压缩格式。
启用光照贴图流 是否对光照贴图使用Mipmap 流。Unity 在生成光照贴图时将其应用于所有光照贴图。
注意:要使用此设置,必须启用纹理 Mipmap 流质量设置。
流优先级 设置Mipmap 流系统中所有光照贴图的优先级。Unity 在生成光照贴图时将其应用于所有光照贴图。
正数表示更高的优先级。有效值范围为 -128 到 127。
帧计时统计信息 启用此选项以收集 CPU/GPU 帧计时统计信息。
虚拟纹理 指示是否启用虚拟纹理
注意:Unity 编辑器需要重新启动才能使此设置生效。
着色器精度模型 选择采样器的默认精度以及着色器在 GPU 上运行的程序。 更多信息
参见 术语表
中使用的half的定义。有关更多信息,请参阅ShaderPrecisionModel
360 立体声捕捉 指示 Unity 是否可以捕获立体声 360 图像和视频。启用后,Unity 将编译其他着色器变体以支持 360 捕获(目前仅在 Windows/OSX 上)。enable_360_capture关键字在RenderToCubemap调用期间添加,但在此函数之外不会触发。

配置

Configuration settings for the Web platform
Web 平台的配置设置
属性 描述
脚本后端 选择要使用的脚本后端。脚本后端决定 Unity 如何编译和执行项目中的 C# 代码。
Mono 将 C# 代码编译成 .NET 通用中间语言 (CIL),并使用通用语言运行时执行该 CIL。有关更多信息,请参阅MonoUnity 中使用的脚本后端。 更多信息
参见 术语表
IL2CPP 将 C# 代码编译成 CIL,将 CIL 转换为 C++,然后将该 C++ 编译成本地机器代码,该代码在运行时直接执行。有关更多信息,请参阅IL2CPPUnity 开发的脚本后端,您可以在为某些平台构建项目时将其用作 Mono 的替代方案。 更多信息
参见 术语表
API 兼容性级别 选择可以在项目中使用的 .NET API。此设置可能会影响与第三方库的兼容性。但是,它对特定于编辑器的代码(编辑器目录中的代码或特定于编辑器的程序集定义中的代码)没有影响。

提示:如果您遇到第三方程序集的问题,可以尝试以下API 兼容性级别部分中的建议。
.Net Framework 与 .NET Framework 4 兼容(包括 .NET Standard 2.0 配置文件中的所有内容以及其他 API)。在使用访问 .NET Standard 2.0 中未包含的 API 的库时,请选择此选项。生成更大的构建,并且任何其他可用的 API 不一定在所有平台上都受支持。有关更多信息,请参阅引用其他类库程序集
.Net Standard 2.1 生成较小的构建并具有完全的跨平台支持。
编辑器程序集兼容性级别

选择在编辑器程序集中使用哪些 .NET API。
.NET Framework 与 .NET Framework 4 兼容(包括 .NET Standard 2.1 配置文件中的所有内容以及其他 API)。当使用访问 .NET Standard 2.1 中未包含的 API 的库时,请选择此选项。生成更大的构建,并且任何其他可用的 API 不一定在所有平台上都受支持。有关更多信息,请参阅引用其他类库程序集
.NET Standard .NET Standard 2.1兼容。生成更小的构建并具有完全的跨平台支持。
IL2CPP 代码生成 定义 Unity 如何管理 IL2CPP 代码生成。

注意:要使用此功能,请将脚本后端设置为IL2CPP
C++ 编译器配置 选择编译 IL2CPP 生成的代码时使用的 C++ 编译器配置。
调试 调试配置关闭所有优化,这使得代码构建速度更快,但运行速度更慢。
发布 发布配置启用优化,因此编译后的代码运行速度更快,二进制文件大小更小,但编译时间更长。
主配置启用所有可能的优化,尽可能地提高性能。例如,在使用 MSVC++ 编译器的平台上,此选项启用链接时代码生成。使用此配置编译代码可能比使用发布配置花费的时间长得多。如果构建时间增加是可以接受的,Unity 建议使用主配置构建游戏的发布版本。
使用增量 GC 使用增量垃圾回收器,它将垃圾回收分散到多个帧中,以减少与垃圾回收相关的帧持续时间峰值。有关更多信息,请参阅自动内存管理
允许通过 HTTP 下载 指示是否允许通过 HTTP 下载内容。默认选项为不允许,因为推荐的协议是 HTTPS,它更安全。
不允许 从不允许通过 HTTP 下载。
在开发版本中允许 仅在开发版本中允许通过 HTTP 下载。
始终允许 在开发和发布版本中允许通过 HTTP 下载。
活动输入处理 选择如何处理用户的输入。
输入管理器(旧版) 使用传统的Input设置。
输入系统包(新版) 使用Input系统。此选项要求您安装InputSystem 包
两者 使用两个系统。

着色器变体加载

使用这些设置来控制着色器在运行时使用多少内存。

属性 描述
默认块大小(MB) 设置 Unity 存储在所有平台的构建应用程序中压缩的着色器变体数据块的最大大小。默认值为16。有关更多信息,请参阅着色器加载
默认块数 设置 Unity 在所有平台上保留在内存中的解压缩块数的默认限制。默认值为0,这意味着没有限制。
覆盖 启用覆盖此构建目标的默认块大小默认块数
块大小(MB) 覆盖此构建目标上默认块大小(MB)的值。
块数 覆盖此构建目标上默认块数的值。

API 兼容性级别

您可以为所有目标选择您的 Mono API 兼容性级别。有时,第三方 .NET 库会使用超出 .NET 兼容性级别的功能。为了了解在这种情况下发生了什么以及如何最好地解决它,请尝试遵循以下建议

  1. 为 Windows 安装ILSpy
  2. 将您遇到问题的 API 兼容性级别的 .NET 程序集拖放到 ILSpy 中。您可以在Frameworks/Mono/lib/mono/YOURSUBSET/下找到有问题的文件。
  3. 拖入您的第三方程序集。
  4. 右键单击您的第三方程序集并选择分析
  5. 在分析报告中,检查依赖项部分。该报告突出显示了第三方程序集依赖的任何内容,但在您选择的 .NET 兼容性级别中不可用,以红色显示。

脚本编译

Script compilation settings for the Web platform
Web 平台的脚本编译设置
属性 描述
脚本定义符号 设置自定义编译标志。

有关更多详细信息,请参阅平台相关编译
其他编译器参数 向此列表中添加条目以将其他参数传递给 Roslyn 编译器。每个其他参数使用一个新条目。
要创建新条目,请单击添加+)。要删除条目,请单击删除-)。

添加所有所需参数后,单击应用以将其他参数包含在以后的编译中。单击恢复以将此列表重置为最近应用的状态。
抑制常见警告 指示是否显示 C# 警告CS0169CS0649
允许“不安全”代码 启用对在预定义程序集(例如Assembly-CSharp.dll)中编译“不安全”C# 代码的支持。
对于程序集定义文件(.asmdef),请单击您的一个.asmdef文件并在出现的检查器窗口中启用该选项。
使用确定性编译 指示是否阻止使用 -deterministic C# 标记进行编译。启用此设置后,每次编译编译后的程序集都完全相同。

有关更多信息,请参阅控制代码生成的 C# 编译器选项

优化

Optimization settings for the Web platform
Web 平台的优化设置
属性 描述
预烘焙碰撞网格 在构建时将碰撞数据添加到网格
预加载资源 为播放器设置一个在启动时加载的资源数组。
要添加新的资源,请增加大小属性的值,然后在出现的新元素框中设置要加载的资源的引用。
剥离引擎代码 如果希望 Unity Linker 工具删除项目不使用的 Unity 引擎功能的代码,请启用此选项。此设置仅在使用IL2CPP 脚本后端时可用。大多数应用程序不使用每个可用的 DLL。此选项会剥离应用程序不使用的 DLL,以减小构建的播放器的大小。如果您的应用程序正在使用一个或多个在当前设置下通常会被剥离的类,则当您尝试构建应用程序时,Unity 会显示一条调试消息。
托管剥离级别 选择 Unity 剥离未使用的托管(C#)代码的力度。当 Unity 构建您的应用程序时,Unity Linker 过程可以从项目使用的托管 DLL 中剥离未使用的代码。剥离代码可以使生成的执行文件更小,但有时可能会删除正在使用的代码。

有关这些选项以及使用 IL2CPP 进行字节码剥离的更多信息,请参阅ManagedStrippingLevel
最小 使用此选项剥离类库、UnityEngine、Windows 运行时程序集,并复制所有其他程序集。
删除无法访问的托管代码以减小构建大小和 Mono/IL2CPP 构建时间。
运行 UnityLinker 以减小代码大小,超出可以达到的范围。您可能需要支持自定义 link.xml 文件,并且某些反射代码路径的行为可能不相同。
UnityLinker 将尽可能多地剥离代码。这将进一步减小代码大小,超出中可以达到的范围,但某些方法的托管代码调试可能不再有效。您可能需要支持自定义 link.xml 文件,并且某些反射代码路径的行为可能不相同。
启用内部探查器(已弃用) 此功能已弃用,将在 Unity 的未来版本中停用。请改用探查器窗口(菜单:窗口 > 分析 > 探查器)。

探查器收集应用程序性能数据并将报告打印到控制台。该报告包含每个 Unity 子系统在每个帧上执行所需的时间(毫秒),在 30 帧内平均。
顶点压缩 设置每个通道的顶点压缩。这会影响项目中的所有网格。
通常,顶点压缩用于减小内存中网格数据的大小、减小文件大小以及提高 GPU 性能。

有关如何配置顶点压缩以及此设置的限制的更多信息,请参阅压缩网格数据
优化网格数据 启用此选项以从构建中使用的网格中剥离未使用的顶点属性。此选项减少了网格中的数据量,这有助于减少构建大小、加载时间和运行时内存使用量。

警告:如果启用了此设置,请不要在运行时更改材质或着色器设置。

有关更多信息,请参阅PlayerSettings.stripUnusedMeshComponents
纹理 Mipmap 剥离 为所有平台启用 Mipmap 剥离。它在构建时从纹理中剥离未使用的 Mipmap 层级。
Unity 通过将 Mipmap 层级与当前平台的质量设置进行比较来确定未使用的 Mipmap 层级。如果 Mipmap 层级从当前平台的每个质量设置中排除,则 Unity 会在构建时从构建中剥离这些 Mipmap 层级。如果QualitySettings.globalTextureMipmapLimit设置为已剥离的 Mipmap 层级,则 Unity 会将该值设置为未剥离的最近的 Mipmap 层级。

堆栈跟踪

选择 Web 平台的日志记录设置。

Logging settings for the Web platform
Web 平台的日志记录设置

通过启用对应于每个日志类型(错误断言警告日志异常)的选项,根据您所需的日志记录类型选择您首选的堆栈跟踪方法。有关更多信息,请参阅堆栈跟踪日志记录

属性 描述
从不记录任何日志。
仅脚本 仅在运行脚本一段代码,允许您创建自己的组件、触发游戏事件、随时间修改组件属性并以任何您喜欢的方式响应用户输入。更多信息
参见词汇表
时记录日志。
全部 始终记录日志。

旧版

启用钳位混合形状(已弃用)选项以钳位蒙皮网格渲染器中混合形状权重的范围。

Legacy settings for the Web platform
Web 平台的旧版设置

发布设置

使用发布设置配置 Unity 如何构建您的 Web 平台应用程序。例如,您可以选择启用浏览器缓存以将其文件存储在您的构建中。

Publishing settings for the Web platform
Web 平台的发布设置
属性 描述
压缩格式 选择用于发布版本文件的压缩格式。选项包括:Gzip、Brotli 和禁用(无)。此选项不影响开发版本开发版本包含调试符号并启用探查器。更多信息
参见词汇表
将文件命名为哈希值 启用此选项以使用未压缩文件内容的 MD5 哈希值作为构建中每个文件的名称。
数据缓存 启用此选项以自动在用户的计算机上缓存您的内容资源数据,以便在后续运行中无需重新下载(除非内容已更改)。


缓存使用浏览器提供的 IndexedDB API 实现。某些浏览器可能会对此施加限制,例如要求用户许可才能缓存超过特定大小的数据。
调试符号 从可用选项中选择,以指定在构建中添加调试符号的方式。
关闭 如果您不希望在构建中添加任何调试符号,请选择此选项。
外部 选择此选项可将调试符号存储到单独的文件中,您可以在发生错误时从服务器下载该文件。建议为发布版本选择此选项。
嵌入 选择此选项可将调试符号嵌入到 WASM 文件中。此选项有助于保留调试符号并在发生错误时执行栈跟踪的反混淆(显示原始函数名称)。默认情况下,此选项提供反混淆支持。
解压缩回退 在加载程序中包含构建文件的解压缩回退代码。如果您无法根据所选压缩方法配置服务器响应标头,请使用此选项。
电源偏好 设置在多 GPU 设备上渲染时要使用的 GPU 的偏好。请注意,浏览器可能会忽略此偏好。
默认 让浏览器选择 GPU 配置。
低性能 请求浏览器使用集成 GPU 以优先考虑节能。
高性能 请求浏览器使用外部 GPU 以优先考虑渲染性能。

WebAssembly 语言特性

使用此部分自定义 Web 应用程序的 WebAssembly 语言特性。

属性 描述
启用异常 选择如何在运行时处理意外的代码行为(通常被认为是错误)。
任何抛出的异常都会导致您的内容因错误而停止。
如果您不需要任何异常支持,请选择此选项。它提供最佳性能和最小的构建。
仅显式抛出的异常(默认) 捕获脚本中从 throw 语句显式指定的异常,并确保调用 finally 块。
此选项会使从您的脚本生成的 JavaScript 代码更长且更慢。这可能仅在脚本是项目中的主要瓶颈时才会成为问题。
完整无堆栈跟踪 捕获脚本中从 throw 语句显式指定的异常、空引用和数组越界访问。
完整带堆栈跟踪 完整无堆栈跟踪相同,但还会捕获堆栈跟踪。
Unity 通过在代码中嵌入检查来生成这些异常,因此此选项会降低性能并增加浏览器内存使用量。仅在调试时使用此选项,并且始终在 64 位浏览器中进行测试。
启用原生 C/C++ 多线程 启用此选项以使用针对 WebAssembly/SharedArrayBuffer 多线程的原生 Unity C/C++ 引擎代码(实验性)。这不会启用多线程 C# 代码,因为这需要 WebAssembly 语言标准的进一步发展。建议禁用此选项,仅在评估未来的 Web 功能时使用。
启用 WebAssembly 2023 如果启用,生成的 WebAssembly 代码将针对 WebAssembly 2023,这是 Unity 为选定的更新的 WebAssembly 语言特性起的一个名称。这些特性包括:符号扩展操作码、非陷阱 fp-to-int 指令、批量内存、JS BigInt 集成、WebAssembly.Table、原生 WebAssembly 异常和 SIMD(需要 Chrome ≥ 91(2021 年 5 月)、Firefox ≥ 89(2021 年 6 月)或 Safari ≥ 16.4(2023 年 3 月))。如果禁用,则会针对原始 WebAssembly MVP 特性集特性集是您可以用来在 Unity 编辑器中实现特定结果的相关软件包的集合。您可以在 Unity 的包管理器中直接管理特性集。更多信息
请参阅 术语表
使用 WebAssembly.Table 如果您希望 Web 构建针对WebAssembly.Table语言特性以实现更快的 JS-Wasm 交互和构建时间,请启用此选项。禁用此选项时,Web 构建会针对较旧的已弃用的 Emscripten -sDYNCALLS 模型,以确保与旧版 Unity Web JS 插件向后兼容。建议为不使用任何旧的不兼容 JavaScript 插件的新项目启用此选项,如果使用依赖于旧 dynCall() 机制的 .jslib 文件,则将其禁用。
注意:WebAssembly.Table不向后兼容。当以WebAssembly.Table为目标时,使用 Emscripten 运行时函数getWasmTableEntry(functionPtr)将函数指针转换为可调用的 JS 函数,或者使用 Emscripten 代码模板{{{ makeDynCall('sig', 'variableName') }}}(...args);进行函数指针调用。早期的 Emscripten 运行时函数族dynCall_sig(ptr, ...args);WebAssembly.Table中不再受支持。有关代码示例,请参阅 Emscripten 文档。
启用 BigInt 启用此选项以针对WebAssembly.BigInt语言特性并在 WebAssembly 中使用BigInt类型,这将导致更快的构建时间和略小的代码大小。禁用此选项时,WebAssembly 中将无法使用BigInt类型。生成的 WebAssembly 代码依赖于包含 64 位变量的函数签名的 BigInt ABI。如果您要定位不支持 Wasm BigInt 特性的旧浏览器,请禁用此选项。建议为新项目启用此选项,以实现快速的构建迭代时间,如果需要向后兼容旧版浏览器,则将其禁用。
注意:Wasm BigInt 特性至少需要 Chrome 85(2020 年 8 月 25 日)、Firefox 78(2020 年 6 月 30 日)、Safari 14.5(2021 年 4 月 26 日)或更高版本。
初始内存大小 WASM 堆内存的初始大小(以兆字节 (MB) 为单位)。默认情况下,此值设置为 32 MB。如果内存增长模式设置为,则这也是 WASM 堆内存的最大大小。
内存增长模式 从以下选项中选择 WASM 堆内存的增长模式。推荐的选项是几何
WASM 堆内存具有在初始内存大小中配置的固定大小。 线性
WASM 堆内存会增加由线性内存增长步长配置的固定量。 几何
WASM 堆内存会根据几何内存增长步长几何内存增长上限中配置的因子相对于当前堆大小增加。 最大内存大小
WASM 堆内存的最大大小(以 MB 为单位)。默认情况下,此值设置为 2048 MB,这是推荐设置。您可以输入最大 4096 MB 的内存大小,但对于超过 2048 MB 的构建,Firefox 和 Chrome 中存在已知的错误。此选项仅在内存增长模式线性几何时可用。 线性内存增长步长
高级调整选项,用于控制 WASM 堆增长步长(以 MB 为单位)。默认情况下,此值设置为 16 MB。16 MB 的增长步长表示每次需要增长堆时,堆都会增加 16 MB。仅当内存增长模式设置为线性时可用。 几何内存增长步长
高级调整选项,用于控制 WASM 堆增长因子相对于当前堆大小。默认情况下,此值设置为 0.2。0.2 的增长因子表示每次需要增长堆时,堆的大小都会增加 0.2 * currentHeapSize。仅当内存增长模式设置为几何时可用。 几何内存增长上限 (MB)

高级调整选项,用于控制堆增长步长(以 MB 为单位)的上限。默认情况下,此值设置为 96 MB。96 MB 的增长上限表示堆的大小最多会增加 96 MB。仅当内存增长模式设置为几何时可用。

显示诊断覆盖设置

  1. 为了帮助优化 Web 构建并诊断潜在问题,您可以通过启用此设置来查看诊断信息(目前仅限于内存使用情况)。启用后,构建上会出现一个图标,显示一个包含构建数据的覆盖层。它适用于开发和发布构建。

    要查看诊断信息,请在播放器设置窗口中启用显示诊断覆盖选项(文件 > 构建设置 > 播放器设置 > 发布设置)。

    Diagnostics button on the footer of the canvas
    在桌面上,诊断图标显示在 Web 画布的页脚上

    画布页脚上的诊断按钮

    An Android phone displaying the diagnostics button
    在移动设备上,诊断图标显示在屏幕的右下方
  2. Android 手机显示诊断按钮

The Diagnostics overlay shows the JavaScript memory distribution and the WASM heap memory usage
单击诊断 图标。会出现一个覆盖层,显示 JavaScript 内存,并进一步细分以显示 WASM 堆内存使用情况

诊断覆盖层显示 JavaScript 内存分布和 WASM 堆内存使用情况

属性 功能
覆盖屏幕上会显示以下诊断信息 总 JS 内存
JavaScript (JS) 堆的当前大小(以兆字节为单位),包括未分配给任何 JS 对象的未用内存。 已用 JS 内存
JS 对象正在使用的内存(以兆字节为单位)。 总 WASM 堆内存
表示使用 Emscripten 编译的 C/C++ Unity 引擎的整个堆的线性内存,包括未分配的内存(以兆字节为单位)。 已用 WASM 堆
已分配的 WASM 堆空间(以兆字节为单位)。 页面加载时间到第一帧
从页面加载开始到第一应用程序帧渲染完成的总时间(以毫秒为单位)。 页面加载时间
从页面加载到开始渲染第一帧所需的时间,包括下载、编译、解析和主应用程序(以毫秒为单位)。 代码下载时间
构建下载代码文件所需的时间(以毫秒为单位)。 资源文件(.data)的加载时间
构建下载 .data 文件二进制文件所需的时间(以毫秒为单位)。 WebAssembly 启动时间
加载 JavaScript 框架到到达 Unity 的 C++ main() 之间所需的时间。这接近 WASM 的编译时间(以毫秒为单位)。 游戏启动时间
完成执行 Unity 的 C++ main() 到主程序的第一帧所需的时间,通常包含加载第一个游戏 场景场景包含游戏环境和菜单。可以将每个唯一的场景文件视为一个唯一的关卡。在每个场景中,放置环境、障碍物和装饰,从本质上讲是分段设计和构建游戏。更多信息
请参阅 术语表
(以毫秒为单位)。
平均 FPS请参阅第一人称射击游戏,每秒帧数。
请参阅 术语表
(10 秒)
过去 10 秒内平均 每秒帧数正在运行的游戏中连续帧显示的频率。更多信息
请参阅 术语表
当前每秒帧数
屏幕上每秒渲染的帧数。 帧停顿次数

与之前的帧相比,渲染完成花费的时间异常长的渲染帧数。

关于 JS 内存的重要说明

JS 内存信息是使用 performance.memory API 获取的,该 API 目前仅在 Chrome 或 Edge 上受支持。没有其他 API 可用于 Safari 或 Firefox 返回此信息。

注意:performance.memory API 在 iOS 设备上不受支持。

A N/A message appears on browsers that dont support performance.memory API
不支持 performance.memory API 的浏览器上会显示“N/A”消息。

其他资源

PlayerSettingsWebGL

Web 开发
与浏览器脚本交互