dcl_uav_typed (sm5 - asm)

(UAV) 声明无序访问视图供着色器使用。

dcl_uav_typed[_glc] dstUAV, 维度, 类型
说明
dstUAV
[in]UAV。
维 度
[in]指定访问 UAV 的指令提供的维度数。
类型
[in]UAV 的类型。

备注

dstUAV 是一个 u# 寄存器,声明为对 UnorderedAccessView 的引用,必须在 API 上绑定到 UAV 槽 #。

维度必须为 buffer、Texture1D、Texture1DArray、Texture2D、Texture2DArray 或 Texture3D。 这表示访问 UAV 的任何指令提供的维度数:1 (Texture1D、Buffer) 、2 (Texture1DArray、Texture2D) 或 3 (Texture2DArray、Texture3D) 。

类型为 {UNORM,SNORM,UINT,SINT,FLOAT}。 使用声明的 u# 执行的操作必须与此处声明的类型兼容,并且绑定到槽 # 的 UAV 也必须具有相同的类型。

_glc国旗代表“全球一致”。 缺少_glc意味着 UAV 仅在计算着色器中声明为“组一致”,或在单个像素着色器调用中声明为“本地一致”。

此指令适用于以下着色器阶段:

顶点 外壳 Geometry 像素 计算
X x

由于 UAV 可用于 Direct3D 11.1 的所有着色器阶段,因此本指令适用于 Direct3D 11.1 运行时的所有着色器阶段,该阶段从 Windows 8 开始可用。

顶点 外壳 Geometry 像素 计算
x X x x x X

注意

计算着色器 4.x 不支持此指令。

最小着色器模型

以下着色器模型中支持此指令:

着色器模型 支持
着色器模型 5
着色器模型 4.1
着色器模型 4
着色器模型 3 (DirectX HLSL)
着色器模型 2 (DirectX HLSL)
着色器模型 1 (DirectX HLSL)

着色器模型 5 程序集 (DirectX HLSL)