版本:Unity 6 (6000.0)
语言:英语
iOS 环境设置
iOS 开发

iOS 播放器设置

iOS 播放器的播放器设置可让您自定义 Unity 在目标为 iOS 平台时构建和显示最终应用程序的方式。您可以通过导航到 编辑 > 项目设置 > 播放器,然后选择 iOS 选项卡来访问它们。有关一般播放器设置的说明,请参阅 播放器设置让您为 Unity 构建的最终游戏设置各种特定于播放器的选项。 更多信息
词汇表 中查看
.

Player settings sections for iOS.
iOS 的播放器设置部分。

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

图标

Icon settings for iOS.
iOS 的图标设置。

使用 图标 设置来自定义您在 Apple Store 上应用程序的品牌。

您可以为每种 iOS 设备上传和分配以下类型的自定义图标

设置 描述
应用程序图标 您应用程序的主要设备图标。
聚光灯图标 出现在聚光灯搜索结果中的图标。
设置图标 出现在设备主设置页面中的图标。
通知图标 从您的应用程序发送的通知中显示的图标。
营销图标 在 Apple App Store 中使用的图标。

图标文件可以是 Unity 支持的任何图像文件,以 Texture2D 资源的形式。如果缺少图标纹理,Unity 会使用最接近的大小缩放图标纹理,优先使用较大的纹理。

分辨率和显示

使用以下 分辨率和显示 设置来自定义屏幕外观的各个方面。

分辨率

属性 描述
分辨率缩放模式 使用 分辨率缩放模式 设置将缩放设置为等于或低于本机屏幕分辨率。
已禁用 缩放不适用,应用程序渲染到其本机屏幕分辨率。
固定 DPI 当您选择此值时,目标 DPI 属性将出现。

使用 目标 DPI 属性设置游戏屏幕的目标 DPI。如果设备的本机屏幕 DPI 高于此值,Unity 会缩小游戏屏幕以匹配此设置。这有助于您优化性能和电池寿命。您也可以使用它来定位特定的 DPI 设置。

Unity 将比例计算为 min(目标 DPI * 因素 / 屏幕 DPI, 1)。因素使用您在 质量 设置中输入的 分辨率缩放固定 DPI 因素 值。
调整窗口大小后重置分辨率 当窗口大小发生变化时,将屏幕分辨率设置为新的窗口大小。如果您将 分辨率缩放模式 设置为 固定 DPI,则分辨率将根据 固定 DPI 属性重新计算。

其他

属性 描述
显示加载指示器 指定加载指示器是否以及如何出现。
不显示 加载指示器不会出现。
中等 默认加载指示器将出现。
将出现一个大的加载指示器。

方向

属性 描述
默认方向 指定应用程序窗口在设备屏幕内的方向。

注意:Unity 在 Android、iOS 和 UWP 之间共享您为此设置设置的值。
纵向 纵向方向,其中应用程序的底部与屏幕的底部对齐。
纵向颠倒 纵向方向,其中应用程序的底部与屏幕的顶部对齐。
横向向右 横向方向,其中应用程序的右侧与屏幕的顶部对齐。
横向向左 横向方向,其中应用程序的左侧与屏幕的顶部对齐。
自动旋转 屏幕可以旋转到您在 自动旋转允许的方向 部分指定的任何方向。
使用动画自动旋转(已弃用) 在用户旋转设备时启用动画过渡。否则,屏幕旋转会立即更改。
注释:
• 此属性仅在您将 默认方向 设置为 自动旋转 时可见。
• 在 iOS 16 及更高版本上,此属性无效,因为自动旋转始终是动画的。
• 此属性已弃用,将在未来的版本中删除。

自动旋转允许的方向

使用 自动旋转允许的方向 部分指定当您将 默认方向 设置为 自动旋转 时应用程序支持的方向。例如,这对于将应用程序锁定到横向方向但允许用户在横向向左和横向向右之间切换很有用。

注意:此部分仅在您将方向部分的 默认方向 设置为 自动旋转 时可见。

属性 描述
纵向 允许纵向方向,其中应用程序的底部与屏幕的底部对齐。
纵向颠倒 允许纵向方向,其中应用程序的底部与屏幕的顶部对齐。
横向向右 允许横向方向,其中应用程序的右侧与屏幕的顶部对齐。
横向向左 允许横向方向,其中应用程序的左侧与屏幕的顶部对齐。

多任务支持

如果您的应用程序需要在全屏模式下运行,请启用 需要全屏 选项。

状态栏

使用 状态栏 部分指定与 iOS 状态栏相关的参数。

属性 描述
状态栏隐藏 在应用程序启动时隐藏状态栏。
状态栏样式 定义应用程序启动时状态栏的样式。

其他分辨率和显示设置

属性 描述
禁用深度和模板 禁用深度和模板缓冲区。
在原生 UI 上渲染 强制您的应用程序在原生 UI 之上渲染。要使此设置生效,请将您的摄像头的 清除标志 设置为使用具有低于 1 的 alpha 值的纯色。

启动画面

使用 虚拟现实启动画面 设置为 虚拟现实虚拟现实 (VR) 使用耳机和运动跟踪,将用户沉浸在逼真的图像和声音的人工 3D 世界中。 更多信息
词汇表 中查看
显示选择自定义启动画面。有关常见启动画面设置的信息,请参阅 启动画面.

启动屏幕

Launch Screen settings for iOS.
iOS 的启动屏幕设置。

启动屏幕 是一个故事板文件,iOS 会从中在设备上创建启动画面。它有以下限制

  • 您无法根据 iPad 的设备方向显示不同的内容。
  • 所有 iPhone 都支持横向启动屏幕,但某些 iOS 版本由于错误而显示 横向向左 启动屏幕而不是 横向向右 启动屏幕。
  • 在 iOS 13 之前,无法覆盖故事板的根视图控制器,因此启动屏幕支持所有方向并忽略一些 UI(用户界面) 允许用户与您的应用程序交互。Unity 目前支持三种 UI 系统。 更多信息
    词汇表 中查看
    设置(如状态栏行为)。从 iOS 13 开始,启动屏幕完全符合您应用的设置,用于方向和状态栏外观。

这些限制也适用于自定义故事板。

iPhone 启动屏幕iPad 启动屏幕 部分中选择 iPhone 和 iPad 的 启动屏幕类型

属性 描述
默认 当您选择此选项时,Unity 会添加一个与 Unity 默认启动屏幕的背景相同的纯蓝黑色图像。该图像用于纵向和横向方向,并使用纵横比填充模式显示。
Apple 不再支持启动图像。此选项是为了向后兼容而存在的。如果您选择它,您的项目将使用 Unity 的默认启动屏幕。
图像和背景(相对大小) 在屏幕中央显示一个图像,并在剩余区域填充一个纯色。
纵向图像 选择纵向方向的图像。
横向图像 选择横向方向的图像。
背景颜色 选择一种背景颜色来填充图像未覆盖的任何屏幕空间。
填充百分比 将图像大小指定为屏幕大小的百分比。Unity 会根据屏幕的长度或宽度(以较小的为准)来计算图像大小(横向显示屏为垂直方向,纵向显示屏为水平方向)。
图像和背景(恒定大小) 在屏幕中央显示一个图像,并在区域填充一个纯色。这与 图像和背景(相对大小) 具有相同的选项,只是您以点而不是百分比来指定图像大小。

提示:点和像素并不相同。像素 (px) 是图像中的单个点。点 (pt) 是长度单位,测量值为 1/72 英寸。像素大小相对于屏幕大小和分辨率,而点大小是任何屏幕上的大小。有关更多信息,请参阅 W3C 关于大小单位的指南
自定义故事板 当您选择此选项时,自定义故事板 按钮将出现。
自定义故事板 选择该按钮以使用自定义故事板文件作为加载屏幕。

自定义故事板

当您在 iPhone 或 iPad 的 启动屏幕类型 下拉列表中选择 自定义故事板 选项时,自定义故事板 按钮将出现。

单击 自定义故事板 按钮选择一个故事板,在您的游戏在设备上启动时显示。要使您的故事板在此处显示,您必须首先在 Xcode 中创建故事板并将它复制到您的项目中。有关更多信息,请参阅 故事板、场景和连接

如果您不使用自定义故事板,您可以使用 Unity 的内置启动屏幕来实现启动画面。

调试和崩溃报告

使用调试和崩溃报告设置来收集有关您的应用程序性能的数据并排除崩溃问题。

调试

属性 描述
启用内部分析器(已弃用) 此功能已弃用,将在 Unity 的未来版本中删除。请改为使用 分析器窗口

性能分析器收集应用程序性能数据并向控制台打印报告。报告包含每个 Unity 子系统在每帧执行时所花费的毫秒数,这是在 30 帧内平均计算得出的。

崩溃报告

属性 描述
在 .Net 未处理异常时 选择 Unity 在发生 .NET 未处理异常时采取的操作。
崩溃 如果应用程序崩溃,则会生成崩溃报告,用户可以将其提交给 iTunes,开发人员可以使用它来排查崩溃问题。
静默退出 应用程序退出,没有错误,也不会生成崩溃报告。
记录 Obj-C 未捕获异常 将 Objective-C 未捕获异常信息打印到控制台。
启用崩溃报告 API 启用自定义崩溃报告器来捕获崩溃。您可以使用 脚本一段代码,允许您创建自己的组件,触发游戏事件,随时间推移修改组件属性,并以您喜欢的任何方式响应用户输入。 更多信息
请参阅 术语表
通过 CrashReport API 访问崩溃日志。

其他设置

您可以在 其他设置 部分配置一系列 Player 设置。这些选项被组织到以下组中:

渲染

使用这些设置来自定义 Unity 如何为 iOS 平台渲染您的应用程序。

    
属性 描述
颜色空间 选择要用于渲染的颜色空间。有关更多信息,请参阅 线性渲染概述
伽马 伽马颜色空间通常用于在旧硬件上计算照明,旧硬件受限于帧缓冲区格式中每个通道 8 位。即使今天的显示器是数字化的,它们仍然可能接受伽马编码信号作为输入。
线性 线性颜色空间渲染提供更精确的结果。当您选择在线性颜色空间中工作时,编辑器默认使用 sRGB 采样。如果您的 纹理 处于线性颜色空间,则您需要在线性颜色空间中工作并为每个纹理停用 sRGB 采样。
色域 您可以添加或删除用于渲染的 色域。单击加号 (+) 图标以查看可用色域的列表。色域定义了给定设备(如显示器或屏幕)可用的颜色范围。sRGB 色域是默认色域(也是必需色域)。
Metal API 验证 启用此选项以使用编辑器内工具来调试着色器问题。在绘制调用时,该工具会检查着色器预期纹理和缓冲区与附加纹理和缓冲区是否一致,并确认其兼容性。检查结果可在控制台中查看。

Metal API 验证 不会启用 Apple 的 Metal API 验证,但您可以在构建设置窗口中将 在 Xcode 中运行方式 设置为 调试,从而为 macOSiOS 启用它。

注意:此设置仅在 macOS 上运行编辑器时才会显示。
Metal 写入专用后缓冲区 允许在非默认设备方向上提高性能。这会在后缓冲区上设置 frameBufferOnly 标志,这会阻止从后缓冲区读取,并允许一些驱动程序优化。
强制 Metal 硬阴影 启用此选项以强制 Unity 对 Metal 上的阴影使用点采样。这会降低阴影质量,从而提高性能。
无内存深度 选择何时使用 无内存渲染纹理。无内存渲染纹理在渲染时暂时存储在片上内存中,而不是存储在 CPU 或 GPU 内存中。这会减少应用程序的内存使用量,但您无法读取或写入这些渲染纹理。

注意:无内存渲染纹理仅在 iOS、tvOS 10.0+、Metal 和 Vulkan 上受支持。在其他平台上,渲染纹理受到读/写保护,并存储在 CPU 或 GPU 内存中。
未使用 从不使用无内存帧缓冲区深度。
强制 始终使用无内存帧缓冲区深度。
自动 让 Unity 决定何时使用无内存帧缓冲区深度。
多线程渲染 启用此选项以将图形 API 调用从 Unity 的主线程移动到单独的工作线程。这有助于提高主线程上 CPU 使用率很高的应用程序的性能。
静态批处理 启用此选项以使用 静态批处理Unity 使用的一种技术,用于在屏幕上绘制游戏对象,它将静态(非移动)游戏对象组合成大型网格,并以更快的速度渲染它们。 更多信息
请参阅 术语表
动态批处理 在您的构建中使用 动态批处理一个自动的 Unity 过程,它尝试将多个网格渲染为单个网格,以优化图形性能。该技术在 CPU 上转换所有游戏对象顶点,并将许多类似的顶点组合在一起。 更多信息
请参阅 术语表
(默认情况下已启用)。

注意:可编程渲染管线 处于活动状态时,动态批处理无效,因此此设置仅在 可编程渲染管线资源 图形 设置为空时可见。
精灵批处理阈值 控制批处理时使用的最大顶点阈值。
GPU 骨骼动画 启用此选项以使用 Metal GPU 计算骨骼动画,这会释放 CPU 资源。
图形作业(实验性) 启用此选项以指示 Unity 将图形任务(渲染循环)卸载到在其他 CPU 内核上运行的工作线程。这样做旨在减少在主线程上花费在 Camera.Render 中的时间,而 Camera.Render 通常是瓶颈。

注意:此功能为实验性功能。它可能不会为您的项目提供性能改进,并且可能会引入新的崩溃。
纹理压缩格式 在 ASTC 和 PVRTC 之间选择作为 iOS 的默认纹理压缩格式。有关更多信息,请查看 纹理压缩格式概述
法线贴图编码 选择 XYZDXT5nm 风格 来设置法线贴图编码。此设置会影响法线贴图使用的编码方案和压缩格式。DXT5nm 风格 法线贴图质量更高,但解码着色器成本更高。
光照贴图编码 定义光照贴图的编码方案和压缩格式。
您可以从 低质量正常质量高质量 中选择。
HDR 立方体贴图编码 定义 HDR 立方体贴图的编码方案和压缩格式。
您可以从 低质量正常质量高质量 中选择。有关更多信息,请参阅 光照贴图:技术信息
光照贴图流式传输 启用此选项以对光照贴图使用 Mipmap 流式传输。当 Unity 生成光照贴图时,它会将此设置应用于所有光照贴图。
注意:要使用此设置,您必须启用 纹理 Mipmap 流式传输质量 设置。
流式传输优先级 设置 Mipmap 流式传输系统 中所有光照贴图的优先级。当 Unity 生成光照贴图时,它会将此设置应用于所有光照贴图。
正数表示更高的优先级。有效值范围为 -128127
帧时间统计信息 启用此选项以收集 CPU/GPU 帧时间统计信息。
允许 HDR 显示输出 应用程序运行时激活 HDR 模式输出。这仅适用于支持此功能的显示器。如果显示器不支持 HDR 模式,则游戏将在标准模式下运行。
使用 HDR 显示输出 检查主显示器是否支持 HDR,如果支持,则在应用程序启动时切换到 HDR 输出。

注意 此选项仅在 允许 HDR 显示输出 处于活动状态时可用。
交换链位深度 选择交换链缓冲区中每个颜色通道的位数。您可以选择 位深度 10位深度 16。有关位深度的更多信息,请参阅 D3DHDRDisplayBitDepth 的脚本 API 页面。

注意 此选项仅在 使用 HDR 显示输出 处于活动状态时可用。
位深度 10 Unity 将使用 R10G10B10A2 缓冲区格式和 Rec2020 原色以及 ST2084 PQ 编码。
位深度 16 Unity 将使用 R16G16B16A16 缓冲区格式和 Rec709 原色以及线性颜色(无编码)。
虚拟纹理 如果您的场景包含许多高分辨率纹理,则启用此选项以减少 GPU 内存使用量和纹理加载时间。有关更多信息,请参阅 虚拟纹理

注意:Unity 编辑器需要重新启动才能使此设置生效。
360 度立体声捕获 指示 Unity 是否可以捕获立体声 360 度图像和视频。启用后,Unity 会编译其他着色器变体以支持 360 度捕获(目前仅在 Windows/OSX 上)。enable_360_capture 关键字在 RenderToCubemap 调用期间添加,但在该函数外部不会触发。
加载/存储操作调试模式 突出显示未定义的像素,这些像素可能会在移动平台上导致渲染问题。这会影响 Unity 编辑器游戏视图以及您构建的应用程序(如果您在构建设置中选择 开发构建)。有关更多信息,请参阅 LoadStoreActionDebugModeSettings

标识

输入您的应用程序的识别信息。

属性 描述
覆盖默认捆绑包标识符 指示您是否可以手动设置捆绑包标识符。
注意:此设置会影响 macOS、iOS、tvOS 和 Android。
捆绑包标识符 输入您正在构建的应用程序的捆绑包标识符。标识符的基本结构为 com.CompanyName.ProductName。此结构可能因您居住的国家/地区而异,因此始终以 Apple 为您的开发者帐户提供的字符串为准。您的 ProductName 可从您的配置文件中获取。

捆绑包标识符必须遵循 com.YourCompanyName.YourProductName 的约定,并且只能包含字母数字字符和连字符。有关更多信息,请参阅 CFBundleIdentifier
重要事项:Unity 会自动将您键入的任何无效字符替换为连字符。

要设置此属性,请启用 覆盖默认捆绑包标识符
版本 输入捆绑包的发布版本号字符串(例如,4.3.6)。

此值在关联的 info.plist 文件中显示为 CFBundleShortVersionString。有关更多信息,请参阅 CFBundleShortVersionString
构建 输入此版本应用程序的构建号。

此值在关联的 info.plist 文件中显示为 CFBundleVersion。有关更多信息,请参阅 CFBundleVersion
签名团队 ID 输入您的 Apple 开发者团队 ID。您可以在 Apple 开发者网站上的 Xcode 帮助 中找到它。这会为生成的 Xcode 项目设置团队 ID,从而允许开发人员使用 构建并运行 功能。您必须输入 Apple 开发者团队 ID 才能自动签名您的应用程序。

有关更多信息,请参阅创建您的团队配置配置文件
自动签名 启用此选项可指示 Xcode 自动签名您的构建。

配置

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

提示:如果您遇到第三方程序集的问题,您可以尝试以下API 兼容性级别部分中的建议。
.Net Framework 与 .NET Framework 4 兼容(其中包括 .NET Standard 2.0 配置文件中的所有内容以及其他 API)。当使用访问 .NET Standard 2.0 中未包含的 API 的库时,请选择此选项。会生成更大的构建,并且任何其他可用的 API 不一定在所有平台上都受支持。有关更多信息,请参阅引用其他类库程序集
.Net Standard 2.1 生成更小的构建,并具有完整的跨平台支持。
Editor 程序集兼容性级别 选择要在 Editor 程序集中使用的 .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 建议在构建游戏的发布版本时使用主配置,如果构建时间的增加是可以接受的。
IL2CPP 堆栈跟踪信息 选择要包含在堆栈跟踪中的信息。有关信息类型的更多详细信息,请参阅使用 IL2CPP 的托管堆栈跟踪
方法名称 在堆栈跟踪中包含每个托管方法。
方法名称、文件名和行号 在堆栈跟踪中包含每个托管方法,以及文件和行号信息。

注意:使用此选项可能会增加构建时间和构建程序的最终大小。
使用增量 GC 使用增量垃圾收集器,它将垃圾收集分散在多个帧中,以减少与垃圾收集相关的帧持续时间峰值。有关更多信息,请参阅自动内存管理
允许通过 HTTP 下载 指示是否允许通过 HTTP 下载内容。默认选项是不允许,因为推荐的协议是 HTTPS,它更安全。
不允许 从不允许通过 HTTP 下载。
开发构建中允许 仅在开发构建中允许通过 HTTP 下载。
始终允许 允许在开发和发布构建中通过 HTTP 下载。
相机使用说明 输入访问设备上相机的理由。
麦克风使用说明 输入访问设备上麦克风的理由。
位置使用说明 输入访问设备位置的理由。
使用按需资源 使用按需资源并启用用于应用切片的变体映射
加速度计频率 选择采样加速度计的频率。使用较低的频率可获得更好的性能。如果您的应用程序未使用加速度计,请选择禁用
静音其他音频源 指示您的 Unity 应用程序是否应该停止后台运行的应用程序的音频。否则,后台应用程序的音频将继续与您的 Unity 应用程序一起播放。
为录制准备 iOS 初始化麦克风录制 API。这会降低录制延迟,但它也会通过耳机重新路由 iPhone 音频输出。
录制时强制使用 iOS 扬声器 即使连接了耳机并正在录制,也将手机的音频输出发送到内置扬声器。
需要持久 Wi-Fi 启用此选项以要求 Wi-Fi 连接。这会保持应用程序运行时的活动 Wi-Fi 连接。
支持的 URL 方案 支持的URL 方案列表。

要添加新方案,请增加大小属性的值,然后在出现的新的元素框中设置对要打开的 URL 的引用。
目标设备 选择应用程序所针对的设备。
目标 SDK 选择应用程序所针对的 SDK。

注意:请确保选择正确的 SDK。例如,如果您在 Unity 中选择设备 SDK 并在 Xcode 中将目标设置为模拟器,则您的构建将失败。
目标最低 iOS 版本 选择应用程序运行的最低 iOS 版本。
启用 ProMotion 支持 在 ProMotion 显示屏上使用高频率刷新率(120 Hz)。这可能会导致应用程序消耗更多电量。
需要 ARKit 支持 将应用程序限制为 iPhone 6s/iOS 11 及更高版本的设备,当您将其发布到 App Store 时。
自动添加功能 生成entitlements.plist文件,如果在项目中检测到 Game Center,则添加其功能。如果您打算使用企业证书签署应用程序或使用通配符捆绑标识符,请禁用此设置。
推迟边缘上的系统手势 选择用户必须两次滑动才能执行系统手势的一条或多条边缘。
在 iPhone X 上隐藏主屏幕按钮 在应用程序运行时,在 iPhone X 设备上隐藏主屏幕按钮。
在暂停时渲染额外帧 在应用程序暂停的帧之后发出一个额外的帧。这使您的应用程序能够显示在应用程序进入后台时显示暂停状态的图形。
启用自定义后台行为 选择用户将应用程序发送到后台时应用程序可以执行的操作。例如,请参阅BackgroundFetch GitHub 项目。
用于应用切片的变体映射 展开用于应用切片的变体映射部分,以查找在脚本中配置的变体名称列表。有关变体的更多信息,请参阅应用切片

注意:启用使用按需资源以查看此属性。
架构 选择要定位的架构。对于 iOS,仅提供ARM64
模拟器架构 选择要为模拟器构建的架构。此属性仅在将目标 SDK设置为模拟器 SDK时可见。
ARM64 支持 64 位 ARM 架构。
X86_64 支持 64 位 Intel/AMD 架构。
通用 支持所有架构,包括 64 位 ARM 和 Intel/AMD。
活动输入处理 选择如何处理用户的输入。
输入管理器(旧版) 使用传统的Input设置。
输入系统包(新版) 使用Input系统。此选项要求您安装InputSystem 包
两者 使用两种系统。

API 兼容性级别

您可以为所有目标选择 mono API 兼容性级别。有时第三方 .NET 库会使用超出您的 .NET 兼容性级别的功能。如果您使用的是 Windows,则可以使用第三方软件 ILSpy 来了解发生了什么以及如何修复它。请按照以下步骤操作

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

着色器设置

属性 描述
着色器精度模型 选择着色器使用的默认精度。有关更多信息,请参阅在着色器中使用 16 位精度
平台默认 在移动平台上使用较低的精度,而在其他平台上使用完整的精度。
统一 如果平台支持,则使用较低的精度。
严格的着色器变体匹配 如果缺少着色器变体,则使用错误着色器并在控制台中显示错误。
保持加载的着色器存活 保持所有加载的着色器存活并防止卸载。

着色器变体加载

使用这些设置来控制着色器在 GPU 上运行的程序。 更多信息
词汇表中查看
在运行时使用多少内存。

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

脚本编译

Script Compilation settings for iOS.
iOS 的脚本编译设置。
属性 描述
脚本定义符号 设置自定义编译标志。

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

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

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

优化

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

有关这些选项以及使用 IL2CPP 的字节码剥离的更多信息,请参阅 ManagedStrippingLevel
最小 使用此选项剥离类库、UnityEngine、Windows 运行时程序集,并复制所有其他程序集。
删除无法访问的托管代码以减小构建大小和 Mono/IL2CPP 构建时间。
中等 运行 UnityLinker 以减小代码大小,使其超出所能达到的程度。您可能需要支持自定义 link.xml 文件,并且某些反射代码路径的行为可能不同。
UnityLinker 将尽可能多地剥离代码。这将进一步减小代码大小,使其超出中等所能达到的程度,但某些方法的托管代码调试可能不再起作用。您可能需要支持自定义 link.xml 文件,并且某些反射代码路径可能行为不同。
脚本调用优化 选择如何禁用异常处理以在运行时提高速度。有关更多信息,请参阅 iOS 优化
顶点压缩 设置每个通道的顶点压缩。这将影响项目中的所有网格。
通常,顶点压缩用于减小内存中网格数据的大小,减小文件大小并提高 GPU 性能。

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

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

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

堆栈跟踪

通过启用与每个日志类型相对应的选项,选择您喜欢的日志记录类型。

属性 描述
从不记录日志。
仅脚本 仅在运行脚本时记录日志。
完全 始终记录日志。

有关更多信息,请参阅 堆栈跟踪日志记录

旧版

属性 描述
钳制混合形状(已弃用) 激活该选项以钳制 SkinnedMeshRenderer 中混合形状权重的范围。

PlayerSettingsiOS

iOS 环境设置
iOS 开发