Version: 6000.3
语言: 中文
OpenGL 核心
Unity 应用程序的辅助功能

火神

Vulkan 是一种现代图形 API,可跨多个平台(包括移动和桌面)运行。Unity 支持 Vulkan,允许您以支持 Vulkan 的设备为目标,并提供对 GPU 的直接控制。

平台兼容性

Unity 支持 Vulkan API,用于在以下平台上开发应用程序:

  • 人造人
  • 嵌入式 Linux
  • Linux的
  • 窗户

用于开发XR一个总称,包括虚拟现实 (VR)、增强现实 (AR) 和混合现实 (MR) 应用。支持这些形式的交互式应用程序的设备可以称为 XR 设备。更多信息
请参阅术语表
应用程序,Unity 支持 Windows 和 Android 平台上的 Vulkan。

Android 上的 Vulkan

当您创建新的 Android 项目时,Vulkan 将启用为默认图形 API。对于 Vulkan 不是默认图形 API 的其他平台,您可以通过 Unity 编辑器的玩家设置设置,用于为 Unity 构建的最终游戏设置各种特定于玩家的选项。更多信息
请参阅术语表
.有关更多信息,请参阅覆盖默认图形 API

使用 Vulkan 开发 Unity Android 项目时,请考虑以下建议和功能:

Vulkan 设备过滤

你可以管理Android设备上的Vulkan支持,以微调哪些设备将Vulkan API与Vulkan设备过滤资产一起使用。此资产允许您排除 Vulkan 可能导致性能不佳的特定 Android 设备。

交换链预轮换

建议通过Android Player设置启用帧缓冲区方向。有关更多信息,请参阅有关帧缓冲区方向的文档。

优点和局限性

考虑在 Unity 项目中使用 Vulkan 作为图形 API 的以下优点和限制。

  • Vulkan 在 Linux 上启用了高清渲染管线 (HDRP) 支持。
  • 在 Linux 和 Android 上,Vulkan 通常支持更多功能,例如图形作业和对 GPU 的直接控制,这些功能在 Linux 上的 OpenGL Core 或 Android 上的 OpenGL ES 中不可用。
  • Unity 不支持 Arm 设备上的 Vulkan for Windows。如果您的应用程序以此类设备为目标,请考虑使用 Unity 支持的替代图形 API。
  • 在 Windows 上,一些功能,例如异步计算和光线追踪通过跟踪来自相机的光线穿过每个像素并记录目标点处的颜色贡献来生成图像的过程。这是光栅化的替代方法。光线追踪
    术语表中查看
    目前尚未为 Vulkan 实现。对于这些功能,建议在 Unity 中使用 D3D12

Vulkan API 的主要功能和差异

Vulkan 支持多种特性和功能,使其有别于其他图形 API(例如 OpenGL)。

  • 图形作业:Vulkan 支持图形作业,该功能允许渲染任务在多个线程上运行。这可能有助于提高应用程序的性能。OpenGL 不支持图形作业功能。
  • 动态分辨率(Dynamic Resolution)摄像机设置,允许你动态缩放单个渲染目标,以减少GPU上的工作负载。更多信息
    请参阅术语表
    :Vulkan 支持在设备上进行动态分辨率缩放,允许实时调整各个渲染目标的分辨率。此功能可减少 GPU 上的工作负载,从而提高应用程序的性能。
  • 无记忆渲染纹理:在某些 Vulkan 兼容平台上,无记忆渲染纹理(render texture)一种特殊类型的纹理,在运行时创建和更新。要使用它们,请先创建一个新的渲染纹理,并指定要渲染到其中的摄像机之一。然后,你可以在材质中使用渲染纹理,就像使用常规纹理一样。更多信息
    请参阅术语表
    在渲染期间将数据临时存储在图块内存中。这有助于提高性能并减少应用程序的内存使用量。
  • 直接控制 GPU:Unity 使用 Vulkan 的直接 GPU 控制功能来支持-force-device-index选项,允许您指定 Unity 的独立播放器应使用哪个 GPU。Vulkan 的此功能允许您优化应用程序以获得更好的性能。OpenGL 不支持此功能。
  • XR 功能:建议将 Vulkan 用于 Android XR 和 Meta Quest 设备,因为某些较新的图形功能仅受 Vulkan 支持。例如,多视图渲染区域是 Vulkan 特有的功能。在针对 XR 平台的 URP 项目中,与 OpenGL 相比,Vulkan API 更稳定,性能更好。

其他资源

OpenGL 核心
Unity 应用程序的辅助功能