ID3D12Device::GetResourceTiling 方法 (d3d12.h)

获取有关平铺资源如何分解为磁贴的信息。

语法

void GetResourceTiling(
  [in]                ID3D12Resource           *pTiledResource,
  [out, optional]     UINT                     *pNumTilesForEntireResource,
  [out, optional]     D3D12_PACKED_MIP_INFO    *pPackedMipDesc,
  [out, optional]     D3D12_TILE_SHAPE         *pStandardTileShapeForNonPackedMips,
  [in, out, optional] UINT                     *pNumSubresourceTilings,
  [in]                UINT                     FirstSubresourceTilingToGet,
  [out]               D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips
);

参数

[in] pTiledResource

类型: ID3D12Resource*

指定用于获取相关信息的平铺 ID3D12Resource

[out, optional] pNumTilesForEntireResource

类型: UINT*

指向接收存储整个平铺资源所需的磁贴数的变量的指针。

[out, optional] pPackedMipDesc

类型: D3D12_PACKED_MIP_INFO*

指向 GetResourceTiling 填充的D3D12_PACKED_MIP_INFO结构的指针,其中包含有关如何打包平铺资源的 mipmap 的信息。

[out, optional] pStandardTileShapeForNonPackedMips

类型: D3D12_TILE_SHAPE*

指定 GetResourceTiling 使用磁贴形状的信息填充的D3D12_TILE_SHAPE结构。 这是有关与平铺资源维度无关(不包括打包的 mipmap)中像素如何适应的信息。 如果打包了整个平铺资源,则此参数毫无意义,因为平铺资源没有为打包的 mipmap 定义布局。 在这种情况下, GetResourceTiling 将D3D12_TILE_SHAPE的成员设置为零。

[in, out, optional] pNumSubresourceTilings

类型: UINT*

指向包含子资源中磁贴数的变量的指针。 在输入时,这是要查询平铺的子资源数;在输出中,这是实际在 pSubresourceTilingsForNonPackedMips (固定到可用内容)中检索的数字。

[in] FirstSubresourceTilingToGet

类型:UINT

要获取的第一个子资源磁贴的索引。 如果 pNumSubresourceTilings 指向的数字为 0,GetResourceTiling 将忽略此参数。

[out] pSubresourceTilingsForNonPackedMips

类型: D3D12_SUBRESOURCE_TILING*

指定 GetResourceTiling 使用子资源磁贴的信息填充的D3D12_SUBRESOURCE_TILING结构。 如果子资源磁贴是打包的 mipmap 的一部分, GetResourceTiling 会将D3D12_SUBRESOURCE_TILING的成员设置为零,但 StartTileIndexInOverallResource 成员除外, GetResourceTiling 会将该成员设置为 D3D12_PACKED_TILE(0xffffffff)。 D3D12_PACKED_TILE常量指示整个 D3D12_SUBRESOURCE_TILING 结构对于这种情况毫无意义, pPackedMipDesc 参数指向的信息适用。

返回值

没有

言论

若要估算计算堆大小和调用 CreatePlacedResource 时所需的纹理的总资源大小,请使用 GetResourceAllocationInfo 而不是 GetResourceTiling。 无法对此使用 GetResourceTiling

有关平铺资源的详细信息,请参阅 卷平铺资源

要求

要求 价值
目标平台 窗户
页眉 d3d12.h
图书馆 D3d12.lib
DLL D3d12.dll

另请参阅

ID3D12Device

子资源