Version: Unity 6.0 (6000.0)
语言 : 中文
帧缓冲区方向
测试和调试

允许或拒绝使用 Vulkan API

默认情况下,Unity 会阻止在已知运行 Unity 应用程序表现不佳的 Android 设备上使用 Vulkan 图形 API。然而,通过测试,您可能会发现某些受限设备实际上使用 Vulkan API 比使用 OpenGLES3 API 更能优化应用性能。或者,您可能希望进一步限制某些设备使用 Vulkan API 运行应用程序。通过使用 Android Vulkan 允许与拒绝过滤器列表,您可以精细化调整哪些设备可以使用 Vulkan API 运行应用程序。

使用 Android Vulkan 允许过滤器列表,您可以允许特定设备将 Vulkan 作为默认图形 API 来运行应用程序。或者,使用 Android Vulkan 拒绝过滤器列表,您可以限制某些设备使用 Vulkan API 来运行应用程序。对于这两种类型的过滤器列表,您可以为以下参数指定值来标识一个或一组设备:

  • Vendor
  • Device Name
  • 品牌
  • Product Name
  • Android OS 系统版本
  • Vulkan API 版本
  • 驱动程序版本

除了 Vulkan API 版本和驱动版本外,所有参数都可以使用 C# 正则表达式进行设置。例如:[A|a]dreno .*6[0-9][0-9]Qual*[S|s]amsung。如果正则表达式无效,Unity 编辑器将显示报错。

设备属性必须匹配所有参数值(逻辑与运算),才能确定是否允许或拒绝使用 Vulkan API 运行应用程序。允许过滤器列表 (Allow Filter List) 会标识 Vulkan API 和驱动版本大于或等于指定参数值的所有设备。例如,如果您指定 GPU 供应商指定为 Qualcomm,将 GPU 型号名称指定为 Adreno,将 Vulkan API 版本指定为 1.1.128,则允许过滤器列表将允许配备 Qualcomm Adreno GPU 且 Vulkan API 版本大于或等于 1.1.128 的所有设备。

Deny Filter List(拒绝过滤器列表)会标识 Vulkan API 和驱动版本小于或等于指定参数值的所有设备。例如,如果将 GPU 供应商指定为 ARM,将 GPU 型号名称指定为 Mali,将 Vulkan 驱动程序版本指定为 0.676.0,则拒绝过滤器列表将限制 Vulkan 驱动程序版本小于或等于 0.676.0 的所有配备 ARM Mali GPU 的设备。

注意:虽然您可以限制某组设备使用 Vulkan API,但可以通过允许过滤器列表来确保该组中特定设备仍能使用 Vulkan。

要始终允许 Android 设备使用 Vulkan API,请执行以下步骤:

  1. 在主菜单中,选择编辑 (Edit) > 项目设置 (Project Settings) > 播放器 (Player) > Android 设置 (Android settings) > 其他设置 (Other Settings)
  2. Vulkan 设置部分中,转到 Android Vulkan 允许过滤器列表并使用折叠(三角形)将其展开。
  3. 选择添加 (Add) (+) 按钮,添加要允许使用 Vulkan API 的 Android 设备规格。此时将显示一组参数。
  4. 在可用参数中输入设备规格。所有参数均为可选。如需详细了解参数说明,请参考 Android Player 设置

满足条件的 Android 设备将始终使用 Vulkan API 来运行 Unity 应用程序。

要限制 Android 设备使用 Vulkan API,请使用 Android Vulkan 拒绝过滤器列表,并按照上述相同步骤操作。

注意

  • 如果在允许过滤器列表和拒绝过滤器列表中设置相同的值,Unity 会忽略这些设置。
  • 受限制的设备将使用播放器设置中配置的回退图形 API 来运行应用程序。如果没有可用的回退 API,应用程序将无法启动。
  • 还可以使用 androidVulkanDenyFilterListandroidVulkanAllowFilterList API 来允许或限制在 Android 设备上使用 Vulkan API。

其他资源

帧缓冲区方向
测试和调试
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961