Version: 6000.3
语言: 中文
iOS 环境设置
针对 iOS 进行开发

iOS 播放器设置

iOS 播放器的播放器设置允许您自定义 Unity 在面向 iOS 平台时构建和显示最终应用程序的方式。你可以通过导航到 编辑(Edit) > 项目设置(Project Settings) > 播放器,然后选择 iOS 选项卡来访问它们。有关常规播放器设置的说明,请参阅玩家设置设置,可让您为 Unity 构建的最终游戏设置各种特定于玩家的选项。更多信息
请参阅术语表
.

iOS 的播放器设置部分。
iOS 的播放器设置部分。

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

图标

iOS 的图标设置。
iOS 的图标设置。

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

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

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

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

决议和演示

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

分辨率

财产 描述
分辨率缩放模式 使用 分辨率缩放模式(Resolution Scaling Mode) 设置将缩放设置为等于或低于原生屏幕分辨率。

  • Disabled:缩放不适用,应用程序呈现为其本机屏幕分辨率。
  • 固定 DPI:选择此值时,将显示“目标 DPI”属性。
目标 DPI 使用 Target DPI 属性设置游戏屏幕的目标 DPI。如果设备的原生屏幕 DPI 高于此值,Unity 会缩小游戏屏幕以匹配此设置。这有助于您优化性能和电池寿命。您还可以使用它来定位特定的 DPI 设置。

Unity 将比例计算为 min(Target DPI * Factor / Screen DPI, 1)。该因子使用“质量”设置中的“分辨率缩放固定 DPI 因子”值。

注意:仅当“分辨率缩放模式”“固定 DPI”时,此设置才可见。
在调整窗口大小时重置分辨率 当窗口大小更改时,将屏幕分辨率设置为新窗口大小。如果将“分辨率缩放模式”设置为“固定 DPI”,则会根据“固定 DPI”属性重新计算分辨率。

杂项

财产 描述
显示加载指示器 指定加载指示器的显示方式。

  • 不显示:加载指示器不显示。
  • :出现默认加载指示器。
  • 大:出现一个大的加载指示器。

取向

财产 描述
默认方向 在设备屏幕中指定应用程序窗口的方向。

注意:Unity 在 Android、iOS 和 UWP 之间共享你为此设置设置的值。


  • 纵向:应用程序底部与屏幕底部对齐的纵向方向。
  • 纵向颠倒:应用程序底部与屏幕顶部对齐的纵向方向。
  • 横向右侧:横向,应用程序的右侧与屏幕顶部对齐。
  • 横向左侧:横向,应用程序的左侧与屏幕顶部对齐。
  • 自动旋转:屏幕可以旋转到您在“自动旋转允许的方向”部分中指定的任何方向。
使用动画自动旋转(已弃用) 在用户旋转设备时启用动画过渡。否则,屏幕旋转会立即更改。

注意:
  • 仅当将 默认方向(Default Orientation) 设置为 自动旋转(Auto Rotation) 时,此属性才可见。
  • 在 iOS 16 及更高版本上,此属性无效,因为自动旋转始终是动画的。
  • 此属性已弃用,将在将来的版本中删除。

自动旋转允许的方向

使用 自动旋转允许的方向(Allowed Orientations for Auto Rotation) 部分指定将默认方向(Default Orientation) 设置为自动旋转(Auto Rotation) 时应用程序支持的方向。例如,这对于将应用程序锁定为横向,但允许用户在横向左和横向右之间进行更改非常有用。

注意:仅当您将“方向”部分中的“默认方向”设置为“自动旋转”时,此部分才可见。

财产 描述
肖像 允许纵向,使应用程序底部与屏幕底部对齐。
颠倒肖像 允许纵向,应用程序底部与屏幕顶部对齐。
景观右 允许横向,应用程序的右侧与屏幕顶部对齐。
左侧景观 允许横向,应用程序的左侧与屏幕顶部对齐。

多任务处理支持

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

状态栏

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

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

其他分辨率和演示设置

财产 描述
禁用深度和模板 禁用深度和模具缓冲区。
通过原生UI渲染 强制应用程序在本机 UI 之上渲染。要使此设置生效,请将摄像机的 清除标志(Clear Flags) 设置为使用alpha值小于1的纯色。

启动图像

使用虚拟现实初始图像设置选择自定义初始图像虚拟现实虚拟现实 (VR) 使用耳机和运动跟踪,让用户沉浸在逼真的图像和声音的人工 3D 世界中。更多信息
术语表中查看
显示。 有关常见初始屏幕设置的信息,请参阅初始屏幕

启动屏幕

启动 iOS 的屏幕设置。
启动 iOS 的屏幕设置。

启动屏幕是一个情节提要文件,iOS 从中在设备上创建初始屏幕。它具有以下限制:

  • 您无法根据 iPad 的设备方向显示不同的内容。
  • 所有 iPhone 都支持横向启动屏幕,但由于错误,某些 iOS 版本显示横向左启动屏幕而不是横向右启动屏幕。
  • 在 iOS 13 之前,无法替代情节提要的根视图控制器,因此启动屏幕支持所有方向,并忽略某些 UI 设置,如状态栏行为。从 iOS 13 开始,启动屏幕完全符合应用的方向和状态栏外观设置。

这些限制也适用于自定义情节提要。

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

财产 描述
启动屏幕类型 选择要用于 iPhone 和 iPad 的启动屏幕类型

  • 默认:选择此选项时,Unity 会添加与 Unity 默认初始屏幕的背景颜色相同的纯蓝黑色图像。该图像用于纵向和横向,并使用纵横比填充模式显示。
  • :Apple 不再支持启动映像。出于向后兼容性原因,存在此选项。如果选中,您的项目将改用 Unity 的默认初始屏幕。
  • 图像和背景(相对大小):在屏幕中央显示图像,并用纯色填充其余区域。
  • 图像和背景(恒定大小):在屏幕中央显示图像,并用纯色填充该区域。这与图像和背景(相对大小)具有相同的选项,不同之处在于您以磅而不是百分比为单位指定图像大小。
  • 自定义情节提要:使用自定义情节提要
肖像图像 选择纵向图像。

注意 :仅当您将启动屏幕类型设置为图像和背景(相对大小)图像和背景(恒定大小)时,此属性才可见。
横向图像 选择横向图像。

注意 :仅当您将启动屏幕类型设置为图像和背景(相对大小)图像和背景(恒定大小)时,此属性才可见。
背景颜色 选择背景颜色以填充图像未覆盖的任何屏幕空间。

注意 :仅当您将启动屏幕类型设置为图像和背景(相对大小)图像和背景(恒定大小)时,此属性才可见。
填充百分比 将图像尺寸指定为屏幕尺寸的百分比。Unity 根据屏幕的长度或宽度计算图像大小,以较小者为准(横向显示为垂直,纵向显示为水平)。

注意:仅当您将启动屏幕类型设置为图像和背景(相对大小)时,此属性才可见。
大小(以点为单位) 以磅为单位指定图像大小。

提示:点和像素并不相同。像素 (px) 是图像中的单个点。点 (pt) 是长度单位,测量为 1/72 英寸。像素大小是相对于屏幕尺寸和分辨率的,而点大小是任何屏幕上的大小。有关详细信息,请参阅有关尺寸单位的 W3C 指南

注意:仅当您将启动屏幕类型设置为图像和背景(恒定大小)时,此属性才可见。

自定义情节提要

在iPhone或iPad的启动屏幕类型下拉列表中选择自定义情节提要选项时,将显示自定义情节提要按钮。

单击“自定义情节提要”按钮以选择要在设备上启动游戏时显示的情节提要。要使故事提要显示在此处,必须先在 Xcode 中创建故事提要并将其复制到项目中。有关详细信息,请参阅情节提要、场景和连接

如果不使用自定义情节提要,则可以使用 Unity 的内置启动屏幕来实现初始图像。

调试和崩溃报告

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

调试

财产 描述
启用内部探查器(已弃用) 此功能已弃用,并将在 Unity 的未来版本中删除。请改用 性能分析器(Profiler) 窗口

探查器收集应用程序性能数据并将报告打印到控制台。该报告包含每个 Unity 子系统在每帧上执行所需的毫秒数,平均值为 30 帧。

崩溃报告

财产 描述
在 .Net 上 UnhandledException(已弃用) 选择 Unity 在发生 .NET 未处理异常时执行的作。

注意:此属性已弃用,将在将来的版本中删除。


  • 崩溃:如果应用程序崩溃,则生成崩溃报告,用户可以将其提交到 iTunes,开发人员可以使用该报告来解决崩溃问题。
  • 静默退出:应用程序退出时没有错误,也不会生成崩溃报告。
记录 obj-c 未捕获的异常 将 Objective-C 未捕获的异常信息打印到控制台。
启用 CrashReport API 启用自定义崩溃报告器以捕获崩溃。您可以使用脚本通过 CrashReport API 访问崩溃日志。

其他设置

您可以在其他设置部分配置一系列播放器设置。这些选项分为以下组:

渲染

使用这些设置可以自定义 Unity 为 iOS 平台渲染应用程序的方式。

财产 描述
色彩空间 选择要用于渲染的色彩空间。有关更多信息,请参阅色彩空间

  • Gamma:Gamma 色彩空间通常用于计算旧硬件上的光照,对于帧缓冲区格式,每个通道限制为 8 位。尽管今天的显示器是数字的,但它们仍然可能接受伽马编码的信号作为输入。
  • 线性:线性色彩空间渲染可提供更精确的结果。当您选择在线性色彩空间中工作时,编辑器默认使用 sRGB 采样。如果你的纹理处于线性色彩空间中,你需要在线性色彩空间中工作,并停用每个纹理的sRGB采样。
色域 您可以添加或删除色以用于渲染。单击加号 (+) 图标可查看可用色域列表。色域定义了给定设备(例如显示器或屏幕)可用的可能颜色范围。sRGB 色域是默认(和必需)色域。
金属 API 验证 启用此选项可使用编辑器内工具调试着色器问题。在绘制调用时,该工具会根据附加的纹理和缓冲区检查着色器预期的纹理和缓冲区,并确认其兼容性。检查结果可在控制台中找到。

Metal API验证不会启用Apple的Metal API验证,但你可以通过在macOSiOS的 构建配置文件(Build Profiles) 窗口中将 在Xcode中运行(Run in Xcode) 设置为 调试(Debug) 来启用它。

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

注意:无记忆渲染纹理仅在 iOS、tvOS 10.0+、Metal 和 Vulkan 上受支持。渲染纹理受读/写保护,并存储在其他平台上的 CPU 或 GPU 内存中。


  • 未使用:永远不要使用无内存帧缓冲区深度。
  • 强制:始终使用无内存帧缓冲区深度。
  • 自动:让 Unity 决定何时使用无记忆帧缓冲区深度。
多线程渲染 启用此选项可将图形 API 调用从 Unity 的主线程移动到单独的工作线程。这有助于提高主线程上 CPU 使用率较高的应用程序的性能。
静态批处理 启用此选项以使用静态批处理Unity 用于在屏幕上绘制游戏对象的一种技术,用于将静态(非移动)游戏对象组合成大网格,并以更快的方式呈现它们。更多信息
请参阅术语表
.
动态批处理 动态批处理 (Dynamic Batching)一种自动 Unity 过程,它尝试将多个网格体渲染为单个网格体,以优化图形性能。该技术转换 CPU 上的所有游戏对象顶点,并将许多相似的顶点组合在一起。更多信息
请参阅术语表
(默认启用)。

注意:可编写脚本的渲染管线处于活动状态时,动态批处理不起作用,因此仅当 可编写脚本的渲染管线资产图形(Scriptable Render Pipeline Asset Graphics) 设置为空时,此设置才可见。
Sprite批处理阈值(Sprite Batching Threshold) 控制批处理时使用的最大顶点阈值。
GPU蒙皮 通过着色器计算网格蒙皮和混合 GPU 上的形状,以释放 CPU 资源并提高性能。

  • CPU:选择此选项可在 CPU 上执行网格蒙皮和混合形状计算。
  • GPU:选择此选项可在GPU上执行网格蒙皮和混合形状计算。
  • GPU(批处理):选择此选项以使用批处理和重新排序在GPU上执行网格蒙皮和混合形状计算。批处理可减少对 GPU 的调度调用次数,并可以提高性能。
图形作业(实验性) 启用此选项可指示 Unity 将图形任务(渲染循环)卸载到在其他 CPU 内核上运行的工作线程。这是为了减少花费在Camera.Render在主线程上,这通常是一个瓶颈。

注意:此功能是实验性的。它可能无法提高项目的性能,并且可能会引入新的崩溃。
纹理压缩格式 在 ASTC 和 PVRTC 之间进行选择,作为 iOS 的默认纹理压缩格式。有关更多信息,请参阅纹理压缩格式概述

注意:PVRTC 格式已弃用。请改用 ASTC 或 ETC 格式。
法线贴图编码 选择 XYZDXT5nm 样式以设置法线贴图编码。此设置会影响用于法线贴图的编码方案和压缩格式。DXT5nm 样式的法线贴图质量更高,但在着色器中解码的成本更高。
光照贴图编码 定义光照贴图的编码方案和压缩格式。
您可以选择低质量正常质量高质量
HDR立方体贴图编码 定义HDR立方体贴图的编码方案和压缩格式。
您可以选择低质量正常质量高质量。有关更多信息,请参阅光照贴图:技术信息
光照贴图流送 启用此选项可将Mipmap流送用于光照贴图。Unity 在生成所有光照贴图时将此设置应用于它们。

注意:要使用此设置,必须启用 纹理Mipmap流送质量(Texture Mipmap Streaming Quality) 设置。
流式处理优先级 设置Mipmap流送系统中所有光照贴图的优先级。Unity 在生成所有光照贴图时将此设置应用于它们。
正数具有更高的优先级。有效值范围为
-128127.
帧时序统计 启用此属性以使用 FrameTimingManager API 收集 CPU 和 GPU 帧时序数据。如果禁用此属性,动态分辨率(Dynamic Resolution)摄像机设置,允许你动态缩放单个渲染目标,以减少GPU上的工作负载。更多信息
请参阅术语表
相机设置无法使用这些数据来动态调整分辨率以减少 GPU 工作负载。
允许HDR显示输出 在应用程序运行时启用 HDR 模式输出。这仅适用于支持此功能的显示器。如果显示器不支持 HDR 模式,则游戏将以标准模式运行。
使用 HDR 显示输出 检查主显示器是否支持 HDR,如果支持 HDR,则在应用程序启动时切换到 HDR 输出。

注意:仅当“允许 HDR 显示输出”处于活动状态时,此选项才可用。
交换链位深度 选择交换链缓冲区的每个颜色通道中的位数。有关位深度的详细信息,请参阅 D3DHDRDisplayBitDepth

注意:仅当启用“使用 HDR 显示输出”时,此设置才可见。


  • 位深度 10:Unity 使用 R10G10B10A2 缓冲区格式和具有 ST2084 PQ 编码的 Rec2020 主端。
  • 位深度 16:Unity 使用R16G16B16A16缓冲区格式和具有线性颜色(无编码)的 Rec709 原色。
虚拟纹理(实验性) 如果您的场景具有许多高分辨率纹理,则减少GPU内存使用和纹理加载时间。有关更多信息,请参阅虚拟纹理。
注意:Unity 编辑器需要重新启动才能使此属性生效。
360度立体捕捉 指示 Unity 是否可以捕获立体 360 度图像和视频。启用后,Unity 会编译其他着色器变体以支持 360 度捕获(目前仅在 Windows/OSX 上)。这enable_360_capture关键字在RenderToCubemap调用,但不会在此函数之外触发。
加载/存储作调试模式 突出显示可能导致移动平台上渲染问题的未定义像素。这会影响 Unity 编辑器的 游戏(Game) 视图,如果你在 Build Profiles 窗口的 Platform Settings 部分选择 Development Build,则会影响你构建的应用程序。有关更多信息,请参阅 LoadStoreActionDebugModeSettings

鉴定

输入应用的识别信息。

财产 描述
覆盖默认捆绑标识符 指示是否可以手动设置捆绑包标识符。

【注】此设置会影响 macOS、iOS、Apple tvOS 和 Android。
捆绑标识符 输入正在构建的应用程序的捆绑标识符。标识符的基本结构是com.CompanyName.ProductName.此结构可能会因你居住的国家/地区而异,因此始终默认为 Apple 为你的开发人员帐户提供给你的字符串。ProductName 可从预配证书中获取。

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

要设置此属性,请启用 覆盖默认捆绑包标识符(Override Default Bundle Identifier)。
版本 输入捆绑包的 release-version-number 字符串(例如,4.3.6)。

此值显示为
CFBundleShortVersionString在关联的info.plist文件。有关详细信息,请参阅 CFBundleShortVersionString
输入此版本应用的内部版本号。

此值显示为
CFBundleVersion在关联的info.plist文件。有关详细信息,请参阅 CFBundleVersion
签署团队 ID 输入您的 Apple 开发人员团队 ID。您可以在 Apple Developer 网站上的 Xcode 帮助下找到此内容。这将为生成的 Xcode 项目设置团队 ID,允许开发人员使用 构建和运行 功能。您必须输入 Apple 开发人员团队 ID 才能自动对应用程序进行签名。

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

配置

财产 描述
脚本后端 选择要使用的脚本后端。脚本后端决定了 Unity 如何在项目中编译和执行 C# 代码。

  • IL2CPP:将 C# 代码编译为 CIL,将 CIL 转换为 C++,然后将该 C++ 编译为本机机器代码,该机器代码直接在运行时执行。有关更多信息,请参阅IL2CPP Unity 开发的脚本后端,在为某些平台构建项目时,可以将其用作 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 代码生成。

注意:要使用它,请将 Scripting Backend 设置为 IL2CPP
C++编译器配置 选择编译 IL2CPP 生成的代码时使用的 C++ 编译器配置。

  • 调试:调试配置会关闭所有优化,这使得代码的构建速度更快,但运行速度较慢。
  • 发布:发布配置启用优化,以便编译后的代码运行得更快,二进制大小减小,但编译需要更长的时间。
  • 主:主配置支持所有可能的优化,尽可能压缩每一点性能。例如,在使用 MSVC++ 编译器的平台上,此选项启用链接时代码生成。使用此配置编译代码可能比使用 Release 配置花费的时间要长得多。建议的最佳做法是,如果构建时间的增加是可以接受的,则使用 Master 配置构建游戏的发布版本。
IL2CPP 堆栈跟踪信息 选择要包含在堆栈跟踪中的信息。有关信息类型的更多详细信息,请参阅使用 IL2CPP 的托管堆栈跟踪

  • 方法名称:在堆栈跟踪中包含每个托管方法。
  • 方法名称、文件名和行号:在堆栈跟踪中包括每个托管方法以及文件和行号信息。

    注意:使用此选项可以增加构建程序的构建时间和最终大小。
使用增量 GC 使用增量垃圾回收器,将垃圾回收分散到多个帧上,以减少与垃圾回收相关的帧持续时间峰值。有关详细信息,请参阅自动内存管理
允许通过 HTTP 下载 指示是否允许通过 HTTP 下载内容。默认选项为“不允许”,因为推荐的协议是 HTTPS,这更安全。

  • 不允许:从不允许通过 HTTP 下载。
  • 开发版本中允许:仅允许在开发版本中通过 HTTP 下载。
  • 始终允许:允许在开发和发布版本中通过 HTTP 下载。
相机使用说明 输入访问设备上相机的原因。
麦克风使用说明 输入访问设备上麦克风的原因。
位置使用说明 输入访问设备位置的原因。
使用按需资源 使用按需资源并启用变体映射以进行应用切片
加速度计频率 选取对加速度计进行采样的频率。使用较低的频率以获得更好的性能。如果您的应用不使用加速度计,请选择“已禁用”
将其他音频源静音 指示您的 Unity 应用程序是否停止在后台运行的应用程序中的音频。否则,来自后台应用程序的音频将继续与 Unity 应用程序一起播放。
准备 iOS 进行录制 初始化麦克风录制 API。这降低了录音延迟,但也通过耳机重新路由 iPhone 音频输出。
录音时强制 iOS 扬声器 通过内置扬声器发送手机的音频输出,即使已插入耳机并进行录音也是如此。
需要持久的 WiFi 启用此选项以要求 Wi-Fi 连接。这会在应用程序运行时保持活动的 Wi-Fi 连接。
支持的 URL 方案 支持的 URL 方案列表。

若要添加新方案,请增加 Size 属性的值,然后设置对要在显示的新元素框中打开的 URL 的引用。
目标设备 选择应用定位到的设备。
目标 SDK 选择应用定位到的 SDK。

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

注意:启用使用按需资源查看此属性。
建筑 选择要面向的架构。只有 ARM64 适用于 iOS。
模拟器架构 选择要为模拟器构建的架构。
仅当您将 Target SDK 设置为 Simulator SDK 时,
此属性才可见。


  • ARM64:支持 64 位 ARM 架构。
  • X86_64:支持 64 位 Intel/AMD 架构。
  • 通用:支持所有架构,包括 64 位 ARM 和 Intel/AMD。
主动输入处理 选择如何处理来自用户的输入。

  • 输入管理器(旧):使用原始输入设置。
  • 输入系统包(新)(Input System Package)(输入系统包)(Input System Package(新)(Input System Package)(输入系统包)(Input
  • 两者:同时使用这两个系统。

API 兼容性级别

您可以为所有目标选择单一 API 兼容性级别。有时,第三方 .NET 库使用超出 .NET 兼容性级别的功能。如果你使用的是Windows,你可以使用第三方软件ILSpy来了解发生了什么以及如何修复它。按着这些次序:

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

着色器设置

财产 描述
着色器精度模型 选择着色器使用的默认精度。有关详细信息,请参阅在着色器中使用 16 位精度

  • 平台默认值:在移动平台上使用较低的精度,在其他平台上使用完全精度。
  • 统一:如果平台支持,请使用较低的精度。
严格的着色器变体匹配 启用此选项可在播放器版本中缺少着色器变体并在控制台中显示错误时使用错误着色器进行渲染。该错误指定用于着色器变体搜索的着色器、子着色器索引、传递和关键字
保持加载的着色器处于活动状态 使所有加载的着色器保持活动状态并防止卸载。

着色器变体加载(Shader Variant Loading)

使用这些设置来控制内存量着色器在 GPU 上运行的程序。更多信息
请参阅术语表
在运行时使用。

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

脚本编译

iOS 的脚本编译设置。
iOS 的脚本编译设置。
财产 描述
脚本定义符号 设置自定义编译标志。

有关更多详细信息,请参阅平台相关编译
其他编译器参数 将条目添加到此列表,以将其他参数传递给 Roslyn 编译器。为每个附加参数使用一个新条目。
要创建新条目,请单击添加+)。要删除条目,请单击删除-)。
添加所有所需参数
后,单击“应用”以在将来的编译中包含其他参数。单击“恢复”将此列表重置为最近应用的状态。
禁止显示常见警告 指示是否显示 C# 警告 CS0169CS0649
允许“不安全”代码 支持在预定义程序集中编译“不安全”的 C# 代码(例如,Assembly-CSharp.dll).
对于装配定义文件 (
.asmdef),单击您的.asmdef文件,并在显示的“检查器”窗口中启用该选项。
使用确定性编译 指示是否使用 -deterministic C# 标志阻止编译。启用此设置后,编译的程序集在每次编译时都是逐字节相同的。

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

优化


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

有关这些选项和使用 IL2CPP 剥离字节码的详细信息,请参阅 ManagedStrippingLevel


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

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

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

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

堆栈跟踪

根据所需的日志记录类型,启用与每种日志类型(错误断言警告日志异常)相对应的选项,选择首选的堆栈跟踪方法。有关详细信息,请参阅堆栈跟踪日志记录

财产 描述
没有 从未记录任何日志。
仅脚本 仅在运行时记录脚本一段代码,允许您创建自己的组件、触发游戏事件、随时间修改组件属性以及以您喜欢的任何方式响应用户输入。更多信息
请参阅术语表
.
一直记录。

遗产

财产 描述
钳制混合形状(已弃用) 激活该选项以限制 SkinnedMeshRenderers 中的混合形状权重范围。

玩家设置iOS

iOS 环境设置
针对 iOS 进行开发