D3D11_BUFFER_DESC 结构 (d3d11.h)
描述缓冲区资源。
语法
typedef struct D3D11_BUFFER_DESC {
UINT ByteWidth;
D3D11_USAGE Usage;
UINT BindFlags;
UINT CPUAccessFlags;
UINT MiscFlags;
UINT StructureByteStride;
} D3D11_BUFFER_DESC;
成员
ByteWidth
类型: UINT
缓冲区的大小(以字节为单位)。
Usage
类型: D3D11_USAGE
确定缓冲区应如何从中读取和写入。 更新频率是一个关键因素。 最常见的值通常是D3D11_USAGE_DEFAULT;有关所有可能的值 ,请参阅D3D11_USAGE 。
BindFlags
类型: UINT
确定缓冲区如何绑定到管道。 (看到 D3D11_BIND_FLAG) 的标志可以与按位 OR 组合使用。
CPUAccessFlags
类型: UINT
CPU 访问标志 (看到 D3D11_CPU_ACCESS_FLAG) ;如果不需要 CPU 访问,则为 0。 标志可以与按位 OR 组合使用。
MiscFlags
类型: UINT
杂项标志 (看到 D3D11_RESOURCE_MISC_FLAG) ;如果未使用,则为 0。 标志可以与按位 OR 组合使用。
StructureByteStride
类型: UINT
当缓冲区表示结构化缓冲区时,缓冲区结构中每个元素的大小 (字节) 。 有关结构化缓冲区的详细信息,请参阅 结构化缓冲区。
StructureByteStride 中的 size 值必须与用于缓冲区视图的格式的大小匹配。 例如,如果使用着色器资源视图 (SRV) 读取像素着色器中的缓冲区,则 SRV 格式大小必须与 StructureByteStride 中的 size 值匹配。
注解
ID3D11Device::CreateBuffer 使用此结构创建缓冲区资源。
除了此结构外,还可以使用 CD3D11_BUFFER_DESC 派生结构(在 D3D11.h 中定义,其行为类似于继承的类)来帮助创建缓冲区说明。
如果绑定标志 D3D11_BIND_CONSTANT_BUFFER,则必须将 ByteWidth 值设置为 16 的倍数,小于或等于 D3D11_REQ_CONSTANT_BUFFER_ELEMENT_COUNT。
要求
要求 | 值 |
---|---|
Header | d3d11.h |