ID3D12GraphicsCommandList1::ResolveSubresourceRegion 方法 (d3d12.h)
将多重采样或压缩资源的区域复制到非多重采样或非压缩资源中。
语法
void ResolveSubresourceRegion(
[in] ID3D12Resource *pDstResource,
[in] UINT DstSubresource,
[in] UINT DstX,
[in] UINT DstY,
[in] ID3D12Resource *pSrcResource,
[in] UINT SrcSubresource,
[in, optional] D3D12_RECT *pSrcRect,
[in] DXGI_FORMAT Format,
[in] D3D12_RESOLVE_MODE ResolveMode
);
参数
[in] pDstResource
类型: ID3D12Resource*
SAL: In
目标资源。 必须使用 D3D11_USAGE_DEFAULT 标志创建,并且必须进行单采样,除非要从压缩的资源 (D3D12_RESOLVE_MODE_DECOMPRESS) 解析它;在这种情况下,它必须具有与压缩源相同的样本计数。
[in] DstSubresource
类型: UINT
SAL: In
标识目标子资源的从零开始的索引。 如果父资源很复杂,请使用 D3D12CalcSubresource 计算子资源索引。
[in] DstX
类型: UINT
SAL: In
目标区域最左侧边缘的 X 坐标。 目标区域的宽度与源矩形的宽度相同。
[in] DstY
类型: UINT
SAL: In
目标区域最上边缘的 Y 坐标。 目标区域的高度与源矩形的高度相同。
[in] pSrcResource
类型: ID3D12Resource*
SAL: In
源资源。 必须是多重采样或压缩的。
[in] SrcSubresource
类型: UINT
SAL: In
标识源子资源的从零开始的索引。
[in, optional] pSrcRect
类型: D3D12_RECT*
SAL: In_opt
指定要解析的源资源的矩形区域。 为 pSrcRect 传递 NULL 指定要解析整个子资源。
[in] Format
类型: DXGI_FORMAT
SAL: In
指定如何合并源和目标资源格式的DXGI_FORMAT。
[in] ResolveMode
SAL: In
指定用于解析源样本的操作。
使用 D3D12_RESOLVE_MODE_DECOMPRESS 操作时,只要源和目标具有相同的样本计数,样本计数可以大于 1,并且源和目标可以指定相同的资源,前提是源矩形与目标 X 和 Y 坐标对齐,在这种情况下,将发生解压缩。
使用 D3D12_RESOLVE_MODE_MIN、 D3D12_RESOLVE_MODE_MAX或 D3D12_RESOLVE_MODE_AVERAGE 操作时,目标的样本计数必须为 1。
返回值
无
备注
ResolveSubresourceRegion 的运行方式与 ResolveSubresource 类似,但只允许解析资源的一部分,并且允许通过多种方式解析源示例。 部分解析在多适配器方案中可能很有用;例如,当渲染区域跨适配器分区时,每个适配器可能只需要解析与其分配的分区相对应的子资源部分。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | d3d12.h |
Library | D3d12.lib |
DLL | D3d12.dll |