Version: 2020.3
iOS 构建设置
Unity Remote

iOS Player 设置

本页面将详细介绍 iOS 特有的 Player 设置。如需了解适用于所有平台的常规 Player 设置的描述,请参阅 Player - 常规设置

独立平台 iOS Player 设置
独立平台 iOS Player 设置

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

Icon

使用 Icon 设置可自定义您的应用程序在 Apple 商店中的品牌标记。

iOS Player 设置中的 Icon 设置
iOS Player 设置中的 Icon 设置

可为每个 iOS 设备(iPhone、iPad)上传并分配以下类型的自定义图标:

图标类型 显示位置
Application icons 应用程序的主图标
Spotlight icons 应用程序的聚光灯搜索结果
Settings icons 设备的主设置页面
Notification icons 从应用程序发送的通知
Marketing icons App Store

上传的所有图标都是 2D 纹理类型的资源。如果缺少图标纹理,Unity 将以最接近的大小来缩放图标纹理,并优先使用较大的纹理。

Resolution and presentation

使用 Resolution and Presentation 部分可以自定义屏幕外观的各个方面。

这些设置分为以下几个类别:

iOS 平台的 Resolution Scaling 播放器设置
iOS 平台的 Resolution Scaling 播放器设置

Resolution Scaling

使用 Resolution Scaling Mode 设置可以将缩放设置为等于或低于屏幕原始分辨率:

功能
Disabled 缩放不会应用,并且应用程序将渲染屏幕原始分辨率。
FixedDPI 选择此值时,将显示 Target DPI 属性。

使用 Target DPI 属性可设置游戏屏幕的目标 DPI。如果设备的屏幕原始 DPI 高于此值,则 Unity 会降低游戏画面分辨率以匹配此设置。这有助于优化性能和电池续航时间。还可以用于定位特定的 DPI 设置。

Unity 计算缩放比例的方式为 min(Target DPI * Factor / Screen DPI, 1)Factor 使用 Quality 设置中输入的 Resolution Scaling Fixed DPI Factor 值。

Orientation

Default Orientation 下拉菜单中选择游戏的屏幕方向。默认设置是 Auto Rotation。如果选择此设置,则屏幕将按照设备方向旋转。

选择其他设置可以确定主屏幕按钮在屏幕上出现的固定位置:

设置 主屏幕按钮位置
Portrait 底部
Portrait Upside Down 顶部
Landscape Left 右侧
Landscape Right 左侧
Auto Rotation 屏幕方向随设备方向而变化。此为默认值。

注意:Default Orientation 设置对 iOS 和 Android 设备均适用。

Default Orientation 中选择 Auto Rotation 时,将出现以下设置:

设置 功能
Use Animated Autorotation 如果启用此复选框,则当用户旋转设备时,屏幕旋转将使用动画过渡。否则,屏幕旋转会立即改变。
Allowed Orientations for Auto Rotation Auto Rotation 会更改屏幕方向以匹配设备方向。您可能希望限制允许的屏幕方向(例如,将设备锁定为横向)。通过选中本部分中的复选框,启用要允许的每个方向。

Multitasking Support

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

Status Bar

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

设置 功能
Status Bar Hidden 启用此选项可在应用程序启动时隐藏状态栏。
Status Bar Style 定义应用程序启动时状态栏的样式。提供的选项为 DefaultLight
Disable Depth and Stencil 启用此选项可禁用深度和模板缓冲区。此设置对 Android 和 iOS 均适用。
Render Over Native UI 启用此选项可强制应用程序在原生 iOS 或 Android UI 之上渲染。此设置对 Android 和 iOS 均适用。
Show Loading Indicator 选择如何显示加载指示符。选项为 LargeInverse LargeSmallInverse Small

Splash image

使用 Splash Image 部分可为 iOS 支持的不同设备自定义应用程序的启动画面。

iOS 平台的启动画面设置
iOS 平台的启动画面设置

Virtual Reality Splash Image 设置(位于通用 Splash Screen 设置 上方)允许您为虚拟现实显示选择自定义的启动画面。

自定义故事板

使用故事板作为 iOS 的启动屏幕
使用故事板作为 iOS 的启动屏幕

对于 iPhone 或 iPad,如果选择 Launch screen type 下拉菜单中的 Custom Storyboard 选项,会出现 Custom Storyboard 按钮。

单击 Custom Storyboard 按钮可选择一个故事板,以便游戏在设备上启动时显示该故事板。要让故事板出现在这里,必须首先在 Xcode 中创建故事板并将其复制到您的项目中。有关更多信息,请参阅关于故事板、场景和连接的 Apple 开发者文档。

禁用 Use Storyboard for Launch Screen 复选框时,可以采用下列方法之一来实现启动画面:

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

启动屏幕

启动画面是一个故事板文件,iOS 通过该文件动态地在设备上创建启动画面。具有以下局限性:

  • 无法根据 iPad 的设备方向来显示不同内容。
  • 所有的 iPhone 都支持横向启动屏幕,但是,由于有个缺陷,某些 iOS 版本中显示 Landscape Left 启动屏幕,而不是 Landscape Right
  • 在 iOS 13 之前,无法覆盖故事板的根视图控制器,因此启动画面支持所有方向并忽略部分 UI 设置,例如状态栏行为。从 iOS 13 开始,启动画面与应用的方向和状态栏外观设置完全符合。

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

iPhone Launch ScreeniPad Launch Screen 部分中,为 iPhone 和 iPad 选择 Launch screen type 选项:

注意:Apple 不再支持启动图像。Unity 在 2019.4 和更新版本中删除了与启动图像相关的所有设置。

功能
Default When you select this option, Unity adds a solid blue-black image that’s the same color as the background for Unity’s default splash screen. The image is used for both portrait and landscape orientations, and displays using aspect-fill mode.
None Apple no longer supports Launch Images. This option exists for backwards compatibility reasons. If you select it, your project will use Unity’s default splash screen instead.
Image and background (relative size) Displays an image in the center of the screen and fills the remaining area with a solid color.
Portrait Image Select an image for portrait orientation.
Landscape Image Select an image for landscape orientation.
Background Color Select a background color to fill any screen space that the image doesn’t cover.
Fill percentage Specify image size as a percentage of the screen size. Unity calculates image size based on the length or width of the screen, whichever one is smaller (vertical for landscape displays, horizontal for portrait ones).
Image and background (constant size) Displays an image in the center of the screen and fills the area with a solid color. This has the same options as Image and background (relative size), except that you specify image size in points rather than as a percentage.

Tip: Points and pixels are not the same. A pixel (px) is a single dot in your image. A point (pt) is a unit of length that measures 1/72th of an inch. Pixel sizes are relative to the screen size and resolution, while point sizes are the size on any screen. For more information, see W3C guidance on size units.
Custom XIB When you select this option, the Custom XIB button appears. Click the button to select a custom XIB file to use as a loading screen.
Custom Storyboard When you select this option, the Custom Storyboard button appears. Click the button to select a custom Storyboard file to use as a loading screen.

注意:如果使用的是 Unity Personal 订阅,Unity 启动画面将在引擎初始化后立即显示,此外还会显示您选择的启动画面。

Debugging and crash reporting

使用 Debugging and crash reporting 设置可以收集有关应用程序性能的数据并解决崩溃问题。

iOS 平台上的 Debugging and crash reporting 部分
iOS 平台上的 Debugging and crash reporting 部分
设置 功能
Enable Internal Profiler (Deprecated) 此功能已被弃用,在 Unity 的未来版本中将不再使用。请改用 Profiler 窗口(菜单:Window > Analytics > Profiler)。

性能分析器 (Profiler) 可收集应用程序的性能数据并将报告输出至控制台。报告包含每个 Unity 子系统在每帧上执行时所用的毫秒数,并在 30 帧范围内取平均值。
On .Net UnhandledException 选择在发生 .NET 未处理的异常时 Unity 采取的操作。提供的选项为 Crash(应用程序崩溃并生成崩溃报告,用户可将该报告提交到 iTunes 并由开发人员用于对崩溃问题进行故障排除)或 Silent Exit(应用程序退出且不报错,也不生成崩溃报告)。
Log Obj-C Uncaught Exceptions 启用此操作后,Unity 会将 Objective-C 未捕获异常信息输出至控制台。
Enable Crash Report API 启用自定义崩溃报告程序以捕获崩溃。您可以使用脚本通过 CrashReport API 来访问崩溃日志。

Other settings

可在 Other Settings 部分中配置一系列 Player 设置。这些选项分为以下几组:

Rendering

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

iOS 平台的 Rendering Player 设置
iOS 平台的 Rendering Player 设置
设置 功能
Color Space 选择 Unity 用于渲染的颜色空间:GammaLinear

请参阅线性渲染概述以了解二者之间的差异。
Auto Graphics API 禁用此选项可手动设置图形 API。此选项在默认情况下为启用状态,并包含 Metal
Color Gamut 可以为 iOS 平台添加或删除色域以用于渲染。单击加号 (+) 图标查看可用色域的列表。色域定义了给定设备(如监视器或屏幕)可以使用的所有颜色范围。sRGB 色域是默认色域(也是必需色域)。

如果目标设备是具备宽色域显示屏的新款 iOS 设备,请使用 DisplayP3 充分利用显示能力。对于旧设备,使用 Metal Editor Support 作为后备选项。
Metal Editor Support 启用此选项可在 Unity Editor 中使用 Metal API,并释放更快速的着色器迭代以定位 Metal API。

注意:选中或取消选中此选项需要您重新启动 Editor,更改才能生效。
Metal API Validation 如果需要调试着色器问题,请启用此选项。仅当选中 Metal Editor Support 复选框时,才会显示此选项。

注意:验证会提高 CPU 使用率,因此仅在进行调试时使用。
Metal Write-Only Backbuffer 允许在非默认设备方向上提高性能。此属性会在后缓冲区上设置 frameBufferOnly 标志,因此会阻止从后缓冲区的回读,但可实现一定程度的驱动程序优化。
Force hard shadows on Metal 启用此选项可强制 Unity 在 Metal 中对阴影使用点采样。这样会降低阴影质量,但可以提高性能。
Memoryless Depth 选择何时使用无记忆渲染纹理。无记忆渲染纹理在渲染时临时存储在区块内存中,而不是存储在 CPU 或 GPU 内存中。这可减少应用程序的内存使用量,但您无法读取或写入这些渲染纹理。

注意:只有 iOS、tvOS 10.0+ Metal 和 Vulkan 上支持无记忆渲染纹理。在其他平台上,渲染纹理受读/写保护并存储在 CPU 或 GPU 内存中。
Unused 从不使用无记忆帧缓冲区深度。
Forced 始终使用无记忆帧缓冲区深度。
Automatic 让 Unity 决定何时使用无记忆帧缓冲区深度。
Multithreaded Rendering 启用此选项可使用多线程渲染。
Static Batching 启用此选项可使用静态批处理。有关更多信息,请参阅绘制调用批处理
Dynamic Batching 启用此选项可使用动态批处理(默认情况下会启用此选项)。有关更多信息,请参阅绘制调用批处理

注意:可编程渲染管线激活时,动态批处理无效,所以仅当 Graphics 设置中的 Scriptable Render Pipeline Asset 为空时,此设置才可见。
Compute Skinning 启用此选项可使用 Metal GPU 计算蒙皮,这样可以释放 CPU 资源。要了解有关 GPU 计算蒙皮的更多信息,请参阅关于骨骼动画的 Wikipedia 页面
Graphics Jobs (Experimental) 启用此选项可指示 Unity 将图形任务(渲染循环)卸载到在其他 CPU 核心上运行的工作线程。这可以减少主线程上 Camera.Render 所花费的时间,该时间通常成为瓶颈。

注意:此功能是实验性的。可能无法为您的项目带来性能提升,并可能导致不稳定。

Unity 目前仅在使用 Vulkan 时支持图形作业 (Graphics Jobs),使用 OpenGL ES 时此设置无效。
Normal Map Encoding 选择 XYZDXT5nm 样式_对法线贴图编码进行设置。此设置影响用于法线贴图的编码方案和压缩格式。DXT5nm 样式_的法线贴图质量更高,但在着色器中解码成本更高。
Lightmap Encoding 选择 Low QualityNormal QualityHigh Quality 来设置光照贴图编码。此设置影响光照贴图的编码方案和压缩格式。
Lightmap Streaming Enabled Whether to use Mipmap Streaming for lightmaps. Unity applies this setting to all lightmaps when it generates them.
Note: To use this setting, you must enable the Texture Streaming Quality setting.
Streaming Priority Set the priority for all lightmaps in the Mipmap Streaming system. Unity applies this setting to all lightmaps when it generates them.
Positive numbers give higher priority. Valid values range from –128 to 127.
Enable Frame Timing Stats 启用此选项可收集 CPU/GPU 帧时序统计信息。

Identification

输入应用程序的标识信息。

iOS 平台的 Identification 设置
iOS 平台的 Identification 设置
设置 功能
Bundle Identifier 输入您正在构建的应用程序的资源调配配置文件。标识符的基本结构是 com.CompanyName.ProductName。此结构可能会根据您居住的国家/地区而有所不同,因此始终默认为 Apple 为您的开发者帐户提供的字符串。您的 ProductName 已在您的资源调配证书中设置。

此值在关联的 info.plist 文件中显示为 CFBundleIdentifier。有关更多信息,请参阅 Apple 开发者文档的 CFBundleIdentifier 部分。

注意:此设置会影响 iOS、tvOS 和 Android。
Version 输入捆绑包的 release-version-number 字符串(例如,4.3.6)。

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

此值在关联的 info.plist 文件中显示为 CFBundleVersion。有关更多信息,请参阅 Apple 开发者文档的 CFBundleVersion 部分。
Signing Team ID 输入您的 Apple Developer Team ID。您可以在 Apple 开发者网站上的 Xcode Help 下找到此信息。这将为生成的 Xcode 项目设置 Team ID,从而允许开发者使用 Build and Run 功能。必须输入 Apple Developer Team ID 才能为应用程序自动签名。

有关更多信息,请参阅 Apple 开发者文档的创建团队资源调配配置文件 (Creating Your Team Provisioning Profile) 部分。
Automatically Sign 启用此选项可指示 Xcode 自动为您的构建版本签名。

配置

iOS 平台的 Configuration 设置
iOS 平台的 Configuration 设置

API 配置设置

设置 功能
Scripting Backend 脚本后端确定 Unity 如何在项目中编译和执行 C# 代码。对于 iOS,此设置默认为 IL2CPP,并且无法更改。

IL2CPP 将 C# 代码编译为 CIL,将 CIL 转换为 C++,然后将该 C++ 编译为本机机器代码,该代码在运行时直接执行。有关更多信息,请参阅 IL2CPP 的文档。

由 IL2CPP 脚本后端生成的 C++ 代码可以逐步更新,从而允许增量式 C++ 构建系统仅编译更改的源文件。这种方式可以显著降低迭代次数。
API Compatibility Level The compatibility level determines which .NET APIs you can use in your Project. This setting can affect compatibility with third-party libraries. However, it has no effect on Editor-specific code (code in an Editor directory, or within an Editor-specific Assembly Definition).

Tip: If you’re having problems with a third-party assembly, you can try the suggestions in the API Compatibility Level section below.
.Net Standard 2.0 兼容 .NET Standard 2.0。生成较小的构建并具有完整的跨平台支持。
.Net 4.x 如果使用的库需要访问 .NET Standard 2.0 中未包含的 API,请选择此选项。兼容 .NET Framework 4(包括 .NET Standard 2.0 配置文件中的所有内容以及其他 API)。

生成更大的构建版本,并且某些可用的其他 API 可能并不是在所有平台上都受支持。有关更多信息,请参阅引用其他类库程序集的文档。
C++ Compiler Configuration 在编译 IL2CPP 生成的代码时使用的 C++ 编译器配置。对于 iOS,此设置默认为 Release,并且无法更改。
Use incremental GC Use the incremental garbage collector, which spreads garbage collection over several frames to reduce garbage collection-related spikes in frame duration. For more information, see documentation on Automatic Memory Management.

API Compatibility Level

You can choose your mono API compatibility level for all targets. Sometimes a third-party .NET library uses functionality that is outside of your .NET compatibility level. If you’re on Windows, you can use the third-party software ILSpy to understand what’s happening and how to fix it. Follow these steps:

  1. Install ILSpy for Windows.
  2. Drag the .NET assemblies for the API compatibility level that you are having issues with into ILSpy. You can find these under Frameworks/Mono/lib/mono/YOURSUBSET/. 3.拖入第三方程序集。 4.右键单击第三方程序集并选择 Analyze。 5.在分析报告中,检查 Depends on 部分。在此部分中会以红色突出显示第三方程序集所依赖的但在您选择的 .NET 兼容性级别中不可用的任何内容。

Apple 特定信息

设置 功能
Camera Usage Description 输入在 iOS 设备上访问摄像头的原因。
Location Usage Description 输入访问 iOS 设备位置的原因。
Microphone Usage Description 输入在 iOS 设备上访问麦克风的原因。
Use on Demand Resource 启用此选项可使用按需资源。

启用后,将显示 Variant map for app slicing 部分。
Accelerometer Frequency 定义加速度计采样的频率。此频率可以设置为 15Hz30Hz60Hz100Hz。或者,选择 Disbaled 以忽略加速度计。
Mute Other Audio Sources 如果希望您的应用程序从后台运行的其他应用程序中停止音频,请启用此选项。否则,后台音频会继续与您的应用程序一起播放。
Prepare iOS for Recording 启用此选项可初始化麦克风录音 API。这会降低录音延迟,但也会通过耳机重新传送 iPhone 音频输出。
Force iOS Speakers when Recording 启用此选项可通过内置扬声器发送手机的音频输出,即使插入耳机和录音也是如此。
Requires Persistent WiFi 启用此选项可要求 Wi-Fi 连接。iOS 在应用程序运行时保持有效的 Wi-Fi 连接。
Allow downloads over HTTP (nonsecure) 启用此选项可允许通过 HTTP 下载内容。默认且推荐使用的文件传输协议为 HTTPS,这种协议更加安全。
Supported URL schemes 支持的 URL 方案列表。

要添加新方案,请增大 Size 属性的值,然后在出现的新 Element 框中设置对要加载的资源的引用。

设备信息

设置 功能
Disable HW Statistics 启用此选项可指示应用程序不要将有关硬件的信息发送到 Unity。
Target Device 选择应用程序的目标设备。选项包括 iPhone OnlyiPad OnlyiPhone + iPad
Target SDK 选择应用程序所针对的 SDK。选项包括 Device SDKSimulator SDK

注意:请务必选择正确的 SDK。例如,如果在 Unity 中选择 Device SDK 并在 Xcode 中以 Simulator 为目标,那么构建将失败。
Target minimum iOS Version 选择运行应用程序所需要的最低 iOS 版本。
Enable ProMotion Support 启用此选项可在 ProMotion 显示屏上允许高频刷新率 (120 Hz)。这可能会导致您的应用程序消耗更多的电池电量。
Requires ARKit support 启用此选项可在应用程序发布到 App Store 时将目标设备限制为 iPhone 6s/iOS 11 或更新款的设备。
Automatically add capabilities 启用此选项后,Unity 会生成一个 entitlements.plist 文件,并为应用程序所实现的 iOS API(例如 Game Center 或 Notifications)添加功能。有关更多信息,请参阅 Apple 开发者文档的授权 (Entitlements) 部分。
Defer system gestures on edges 选择一个或多个边缘,用户必须轻扫两次相应的边缘才能作为系统手势。选项包括 Top EdgeLeft EdgeBottom EdgeRight Edge
Hide home button on iPhone X 启用此选项可在应用程序运行时隐藏 iPhone X 设备上的主屏幕按钮。
Render Extra Frame on Pause 启用此选项可在应用程序暂停时逐一发出其他帧。这允许您的应用程序显示图形,用于指示应用程序进入后台时的暂停状态。
Enable Custom Background Behaviors 选择当用户按下主屏幕按钮以将应用程序送入后台时允许该应用程序执行的操作。有关示例,请参阅 BackgroundFetch Bitbucket 项目。选项为:

- Audio, AirPlay, PiP
- Location updates
- Voice over IP
- Newsstand downloads
- External accessory communication
- Uses Bluetooth LE accessories
- Act as a Bluetooth LE accessory
- Background fetch
- Remote notifications

Variant map for app slicing

展开 Variant map for app slicing 部分可查看脚本中配置的变体名称列表。有关变体的更多信息,请参阅应用程序切片

__注意:__如果未显示该部分,请确保已启用 Use on Demand Resource 属性。

可以使用加号 (+) 和减号 (-) 图标添加和删除新变体。还可以从列表中选择变体,并在 Variant settings 下查看或修改其设置。对于任何的这些设置(Variant name 除外),如果选择 Custom value,则会在其下方显示一个附加属性,然后可在其中输入要使用的值:

设置 功能
Variant name 显示加载脚本中变体的名称。
设备 选择此变体所针对的设备。选项包括 Any_(默认值)、iPhoneiPadiWatch_ 和 Custom value
Memory 选择此变体所需的最小内存。选项包括 Any_(默认值)、1GB2GB3GB4GB_ 和 Custom value
Graphics 选择要使用的 Metal 框架。选项包括 Any_(默认值)、Metal1v2Metal2v2Metal2v3Metal3v1Metal3v2Metal4v1_ 和 Custom value

有关更多信息,请参阅 Apple 开发者文档的 Metal 部分。
Display color space 选择要使用的色域。选项包括 Any_(默认值)、sRGBDisplayP3_ 和 Custom value

也可以添加自己的设置。单击 Add custom entry 按钮,然后将出现一对新文本框:

  • <key>:输入该设置的名称。
  • <value>:输入该设置的值。

其他配置设置

设置 功能
Architecture 选择目标架构。
Universal 支持所有架构。这是建议的选项。
Armv7 仅支持较旧的 32 位 ARM 架构。
Arm64 仅支持较新的 64 位 ARM 架构。如果您的应用程序仅适用于高端设备,则可能需要考虑选择此选项。
Active Input Handling 选择您希望如何处理来自用户的输入。
Input Manager (Old) 使用传统的 Input 设置。
Input System (New) 使用新的输入系统。输入系统作为此版本的预览包提供。要试用输入系统的预览版,请安装 InputSystem 包
Both 并排使用两个系统。

Script Compilation

面向 iOS 平台的脚本编译设置
面向 iOS 平台的脚本编译设置
Setting Function
Scripting Define Symbols Set custom compilation flags. For more details, see the documentation on Platform dependent compilation.
Additional Compiler Arguments Add entries to this list to pass additional arguments to the Roslyn compiler. Use one new entry for each additional argument.
To create a new entry, press the ‘+’ button. To remove an entry, press the ‘-’ button.
When you have added all desired arguments, click the Apply button to include your additional arguments in future compilations.The Revert button resets this list to the most recent applied state.
Suppress Common Warnings Disable this setting to display the C# warnings CS0169 and CS0649.
Allow ‘unsafe’ Code Enable support for compiling ‘unsafe’ C# code in a pre-defined assembly (for example, Assembly-CSharp.dll).
For Assembly Definition Files (.asmdef), click on one of your .asmdef files and enable the option in the Inspector window that appears.
Use Deterministic Compilation Disable this setting to prevent compilation with the -deterministic C# flag. With this setting enabled, compiled assemblies are byte-for-byte identical each time they are compiled.
For more information, see Microsoft’s deterministic compiler option documentation.
Enable Roslyn Analyzers Disable this setting to compile user-written scripts without Roslyn analyzer DLLs that might be present in your project.
Use Roslyn Reference Assemblies Disable this setting to the compiler not to skip compilation reference assemblies when the metadata of the assembly does not change.

Optimization

iOS 平台的 Optimization 设置
iOS 平台的 Optimization 设置
设置 功能
Prebake Collision Meshes 启用此选项可在构建时将碰撞数据添加到网格。
Keep Loaded Shaders Alive 启用此选项可防止卸载着色器。
Preloaded Assets 设置一个资源数组,供播放器在启动时加载。

要添加新资源,请增大 Size 属性的值,然后在出现的新 Element 框中设置对要加载的资源的引用。
AOT compilation options 提前 (AOT) 编译的附加选项。这有助于优化构建的 iOS 播放器的大小
Strip Engine Code 如果希望 Unity Linker 工具删除您的项目不使用的 Unity 引擎功能的代码,请启用此选项。此设置仅适用于 IL2CPP 脚本后端。

大多数应用程序并不会使用每个可用的 DLL。此选项会剥离您的应用程序不使用的 DLL,从而减小所构建的 Player 的大小。如果您的应用程序使用的一个或多个类通常在当前设置下会被删除,则当您尝试构建该应用程序时,Unity 将显示一条调试消息。
Managed Stripping Level 选择 Unity 剥离未使用的托管 (C#) 代码时的激进程度。

当 Unity 构建应用程序时,Unity Linker 进程可以从项目使用的托管 DLL 中剥离未使用的代码。剥离代码可以使生成的可执行文件显著减小,但有时可能会意外删除正在使用的代码。此设置允许您选择 Unity 删除未使用代码时应采取的激进程度。

可用选项为:DisabledLowMediumHigh。有关这些选项的更多信息,请参阅托管代码剥离的文档。

有关使用 IL2CPP 进行字节码剥离的信息,请参阅使用 IL2CPP 进行托管字节码剥离的文档。
Script Call Optimization 选择如何在运行时选择性地禁用异常处理以提高速度。有关更多信息,请参阅 iOS 优化
Slow and Safe 使用完整的异常处理(使用 Mono 脚本后端时会对设备的性能有一些影响)。
Fast but no Exceptions 不为设备上的异常提供数据(使用 Mono 脚本后端时应用程序运行速度更快)。
注意:将此选项与 IL2CPP 脚本后端一起使用不会影响性能,但是可能有助于避免发布版本中出现未定义的行为。
Vertex Compression 设置每个通道的顶点压缩。例如,可以为除位置和光照贴图 UV 之外的所有内容启用压缩。导入对象的全局网格压缩设置将覆盖这些设置。
Optimize Mesh Data 启用此选项可从网格中删除应用于网格的材质不需要的所有数据(例如切线、法线、颜色和 UV)。

Logging

选择在特定上下文中允许的日志记录类型。

iOS 平台的 Logging 设置
iOS 平台的 Logging 设置

选中运行脚本时 (ScriptOnly)、始终 (Full) 或从不 (None) 条件下对应于每个 Log Type(__ErrorAssertWarningLog__ 和 __Exception__)的复选框。

Legacy

启用 Clamp BlendShapes (Deprecated) 选项可在 SkinnedMeshRenderers 中钳制混合形状权重的范围。此选项已弃用,不应再使用。

XR settings

注意:对 XR SDK 的内置支持已被弃用,在 Unity 的未来版本中将不再使用。请改用 Unity XR 插件系统。有关更多信息,请参阅 XR 插件架构

使用 XR Settings 部分可配置应用程序在 XR 中的行为。

独立平台播放器的 XR Settings
独立平台播放器的 XR Settings
设置 功能
Virtual Reality Supported 如果您的应用程序是虚拟现实应用程序,请启用此选项,然后将所需的 VR SDK 添加到列表中。
Virtual Reality SDKs 在列表中添加和删除虚拟现实 SDK。此列表仅在启用 Virtual Reality Supported 时可用。

- 要将 SDK 添加到列表中,请单击加号 (+) 按钮。
- 要从列表中删除 SDK,请选择它,然后单击减号 (-) 按钮。

某些 SDK 提供了额外设置,这些设置显示在此处。
Stereo Rendering Mode 选择希望应用程序为虚拟现实设备渲染的方式。
Multi Pass 这是正常的渲染模式。Unity 渲染场景两次:首先渲染左眼图像,然后再次为右眼图像。
Single Pass 将两个眼睛图像同时渲染到一个打包的渲染纹理中。这意味着整个场景只渲染一次,这大大减少了 CPU 处理时间。此设置会影响多个平台。
iOS 构建设置
Unity Remote