Version: Unity 6.0 (6000.0)
语言 : 中文
HLSL pragma 指令参考
HLSL pragma require 命令参考

HLSL pragma target 命令参考

下表列出了 Unity 所使用的着色器模型,以及分别对应的 #pragma require 值的组合。

注意:Unity 的着色器模型类似于 DirectX 着色器模型和 OpenGL 版本要求,但它们并不完全对应。请仔细阅读描述以确保了解差异。

描述 支持 等效 #pragma require
2.0 等效于 DirectX 着色器模型 2.0

有限数量的算术和纹理指令;8 个插值器;无顶点纹理采样;无片元着色器中的导数;无明确的 LOD 纹理采样。
适用于 Unity 支持的所有平台。 N/A
2.5 与 3.0 几乎相同,但只有 8 个插值器,无明确的 LOD 纹理采样。 DirectX 11 功能级别 9+
OpenGL 3.2+
Vulkan
Metal
derivatives
3.0 等效于 DirectX 着色器模型 3.0

.
DirectX 11 功能级别 10 +
OpenGL 3.2+
OpenGL ES 3.0+
Vulkan
Metal
2.5 中的所有内容,以及:
interpolators10 samplelod fragcoord
3.5 等效于 OpenGL ES 3.0

DirectX 11 功能级别 10+
OpenGL 3.2+
OpenGL ES 3+
Vulkan
Metal
3.0 中的所有内容,以及:
interpolators15 mrt4 integers 2darray instancing
4.0 等效于 DirectX 着色器模型 4.0,但不要求支持 8 个 MRT。 DirectX 11 功能级别 10+
桌面端 OpenGL 3.x
OpenGL ES 3.1
OpenGL ES 3.1 + Android 扩展包 (AEP)
OpenGL 3.2+
Vulkan
Metal(如果未定义几何体阶段)
3.5 中的所有内容,以及:
geometry
gl4.1 等效于 OpenGL 4.1 桌面端 OpenGL 4.1
着色器模型 4.0 + 曲面细分以匹配 macOS 10.9 功能。
4.0 中的所有内容,以及:
cubearray tesshw tessellation msaatex
4.5 等效于 OpenGL ES 3.1 DirectX 11 功能级别 11+
OpenGL 4.3+
OpenGL ES 3.1
Vulkan
Metal
3.5 中的所有内容,以及:
compute randomwrite msaatex
4.6 等效于 OpenGL 4.1

这是 Mac 支持的最高 OpenGL 级别。
DirectX 11 功能级别 11+
OpenGL 4.1+
OpenGL ES 3.1 + AEP
Vulkan
Metal(如果未定义几何体阶段,也未定义外壳或域阶段)
4.0 中的所有内容,以及:
cubearray tesshw tessellation msaatex
5.0 等效于 DirectX 着色器模型 5.0,但不要求支持 32 个插值器或立方体贴图数组。 DirectX 11 功能级别 11+
Desktop OpenGL >= 4.2
OpenGL 4.3+
OpenGL ES 3.1 + AEP
Vulkan
Metal(如果未定义几何体阶段,也未定义外壳或域阶段)
4.0 中的所有内容,以及:
compute randomwrite msaatex tesshw tessellation

如需了解支持的游戏主机平台,请参阅针对该平台的文档。

注意:

  • 在 DirectX 定义中,着色器模型 4.0 包含 mrt8,着色器模型 5.0 包含 interpolators32cubearray。Unity 不包含上述项,以便实现更广泛的兼容性。要要求这些功能,请使用显式 #pragma require 指令。
  • 如果您使用的目标需要 geometry,但着色器未定义几何体阶段,Unity 会在编译时从要求列表中删除 geometry
  • 如果您使用的目标需要 tessellation,但着色器未定义外壳或域阶段,Unity 会在编译时从需求列表中删除 tessellation
HLSL pragma 指令参考
HLSL pragma require 命令参考
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961