Skip to main content
Obtém um layout de recurso que pode ser copiado. Ajuda o aplicativo a preencher D3D12_PLACED_SUBRESOURCE_FOOTPRINT e D3D12_SUBRESOURCE_FOOTPRINT ao subalocar espaço em heaps de upload.

Sintaxe

Parâmetros

pResourceDesc   _In_
Tipo: D3D12_RESOURCE_DESC1*
Uma descrição do recurso, como um ponteiro para uma estrutura D3D12_RESOURCE_DESC1. FirstSubresource   _In_range_(0,D3D12_REQ_SUBRESOURCES)
Tipo: UINT
Índice do primeiro sub-recurso no recurso. O intervalo de valores válidos é de 0 a D3D12_REQ_SUBRESOURCES. NumSubresources   _In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource)
Tipo: UINT
O número de sub-recursos no recurso. O intervalo de valores válidos é de 0 a (D3D12_REQ_SUBRESOURCES - FirstSubresource). BaseOffset   
Tipo: UINT64
O deslocamento, em bytes, até o recurso. pLayouts   _Out_writes_opt_(NumSubresources)
Tipo: D3D12_PLACED_SUBRESOURCE_FOOTPRINT*
Um ponteiro para uma matriz (de comprimento NumSubresources) de estruturas D3D12_PLACED_SUBRESOURCE_FOOTPRINT, a ser preenchida com a descrição e o posicionamento de cada sub-recurso. pNumRows   _Out_writes_opt_(NumSubresources)
Tipo: UINT*
Um ponteiro para uma matriz (de comprimento NumSubresources) de variáveis inteiras, a ser preenchida com o número de linhas de cada sub-recurso. pRowSizeInBytes   _Out_writes_opt_(NumSubresources)
Tipo: UINT64*
Um ponteiro para uma matriz (de comprimento NumSubresources) de variáveis inteiras, em que cada entrada será preenchida com o tamanho sem preenchimento, em bytes, de uma linha de cada sub-recurso. Por exemplo, se um recurso Texture2D tiver largura de 32 e 4 bytes por pixel, então pRowSizeInBytes retornará 128. pRowSizeInBytes não deve ser confundido com o pitch de linha, pois examinar pLayouts e obter o pitch de linha a partir dele fornecerá 256, já que ele é alinhado a D3D12_TEXTURE_DATA_PITCH_ALIGNMENT. pTotalBytes   _Out_opt_
Tipo: UINT64*
Um ponteiro para uma variável inteira, a ser preenchida com o tamanho total, em bytes.

Valor retornado

Nenhum

Comentários

Essa rotina ajuda o aplicativo a preencher as estruturas D3D12_PLACED_SUBRESOURCE_FOOTPRINT e D3D12_SUBRESOURCE_FOOTPRINT ao subalocar espaço em heaps de upload. As estruturas resultantes são independentes do adaptador de GPU, o que significa que os valores não variam de um adaptador de GPU para outro. GetCopyableFootprints usa detalhes especificados sobre formatos de recursos, layouts de textura e requisitos de alinhamento (da estrutura D3D12_RESOURCE_DESC) para preencher as estruturas de sub-recursos. Os aplicativos têm acesso a todos esses detalhes, portanto esse método, ou uma variação dele, poderia ser escrito como parte do aplicativo.

Requisitos

Cabeçalho: d3d12_xs.h Biblioteca: d3d12_xs.lib
Plataformas compatíveis: consoles XBOX Series

Confira também

Visão geral da API Sampler Feedback do Direct3D 12 ID3D12Device8
Last modified on October 6, 2026