Unity 支持 DirectX 图形 API,包括 DirectX 11 和 DirectX 12。但是,并非所有功能都可以在 DirectX 11 中使用。有关更多信息,请参阅Unity 中 DirectX 11 和 DirectX 12 的功能比较。
您可以在编辑器或独立播放器中选择将 DirectX 11 (DX11) 或 DirectX 12 (DX12) 作为您的默认图形 API。
打开播放器设置允许您为 Unity 生成的最终游戏设置各种特定于播放器的选项的设置。 更多信息
请参阅术语表(菜单:编辑 > 项目设置 > 播放器)。
在其他设置 > 渲染 部分,禁用平台的自动图形 API(Windows/Mac/Linux)选项。
选择添加(+)按钮,然后从支持的图形 API 列表中选择Direct3D11或Direct3D12。
以下列表包含 DirectX 12 图形 API 引入的功能,这些功能在 DirectX 11 中不可用。
API | DirectX 11 | DirectX 12 |
---|---|---|
动态分辨率摄像机设置,允许您动态缩放单个渲染目标以减少 GPU 的工作负载。 更多信息 请参阅术语表 |
不支持 | 支持 |
异步计算 | 不支持 | 支持 |
原生渲染通道 | 不支持 | 支持 |
光线追踪加速 | 不支持 | 支持 |
图形状态收集 | 不支持 | 支持 |
XR 凹陷渲染 | 不支持 | 支持 |
渲染线程模式 | DirectX 11 | DirectX 12 |
---|---|---|
直接 | 支持 | 支持 |
单线程 | 支持 | 支持 |
主线程 + 渲染线程 | 支持 | 支持 |
旧版作业化 | 支持 | 支持 |
原生图形作业 | 不支持 | 支持 |
分割图形作业 | 不支持 | 支持 |
着色器在 GPU 上运行的程序。 更多信息 请参阅术语表功能 |
DirectX 11 | DirectX 12 |
---|---|---|
光线追踪着色器 | 不支持 | 支持 |
内联光线追踪(#pragma multi_compile _ UNITY_DEVICE_SUPPORTS_INLINE_RAY_TRACING ) |
不支持 | 支持 |
原生 16 位(#pragma multi_compile _ UNITY_DEVICE_SUPPORTS_NATIVE_16BIT ) |
不支持 | 支持 |
波函数(#pragma multi_compile _ UNITY_DEVICE_SUPPORTS_WAVE_ANY ) |
不支持 | 支持 |
通用渲染管线一系列操作,用于获取场景的内容并在屏幕上显示它们。 Unity 允许您从预建的渲染管线中进行选择,或编写您自己的渲染管线。 更多信息 请参阅术语表 |
DirectX 11 | DirectX 12 |
---|---|---|
光栅化通道合并 | 不支持 | 支持(ARM 上的 Windows) |
原生渲染通道 | 不支持 | 支持(ARM 上的 Windows) |
帧缓冲区获取 | 不支持 | 支持(ARM 上的 Windows) |
高清渲染管线 | DirectX 11 | DirectX 12 |
---|---|---|
硬件动态分辨率 | 不支持 | 支持 |
异步计算着色器 | 不支持 | 支持 |
光线追踪环境光遮蔽 | 不支持 | 支持 |
光线追踪接触阴影 | 不支持 | 支持 |
光线追踪全局照明 | 不支持 | 支持 |
光线追踪反射 | 不支持 | 支持 |
光线追踪阴影 | 不支持 | 支持 |
光线追踪递归 | 不支持 | 支持 |
光线追踪次表面散射 | 不支持 | 支持 |