Compartilhar via


Método ID3D12Device8::GetCopyableFootprints1 (d3d12.h)

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

Sintaxe

void GetCopyableFootprints1(
  const D3D12_RESOURCE_DESC1         *pResourceDesc,
  UINT                               FirstSubresource,
  UINT                               NumSubresources,
  UINT64                             BaseOffset,
  D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts,
  UINT                               *pNumRows,
  UINT64                             *pRowSizeInBytes,
  UINT64                             *pTotalBytes
);

Parâmetros

pResourceDesc

Tipo: const D3D12_RESOURCE_DESC1*

Uma descrição do recurso, como um ponteiro para uma estrutura D3D12_RESOURCE_DESC1 .

FirstSubresource

Tipo: [in] UINT

Índice do primeiro sub-recurso no recurso. O intervalo de valores válidos é de 0 a D3D12_REQ_SUBRESOURCES.

NumSubresources

Tipo: [in] 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, para o recurso.

pLayouts

Tipo: [out, opcional] D3D12_PLACED_SUBRESOURCE_FOOTPRINT*

Um ponteiro para uma matriz (de tamanho NumSubresources) de D3D12_PLACED_SUBRESOURCE_FOOTPRINT estruturas, a ser preenchida com a descrição e o posicionamento de cada sub-recurso.

pNumRows

Tipo: [out, opcional] UINT*

Um ponteiro para uma matriz (de comprimento NumSubresources) de variáveis de inteiro, a ser preenchida com o número de linhas para cada sub-recurso.

pRowSizeInBytes

Tipo: [out, opcional] UINT64*

Um ponteiro para uma matriz (de comprimento NumSubresources) de variáveis de inteiro, cada entrada a ser preenchida com o tamanho não adicionado em bytes de uma linha, de cada sub-recurso.

Por exemplo, se um recurso Texture2D tiver uma largura de 32 e bytes por pixel de 4, pRowSizeInBytes retornará 128.

PRowSizeInBytes não deve ser confundido com a inclinação de linha, pois examinar pLayouts e obter o pitch de linha de que lhe dará 256, pois ele está alinhado a D3D12_TEXTURE_DATA_PITCH_ALIGNMENT.

pTotalBytes

Tipo: [out, opcional] UINT64*

Um ponteiro para uma variável de inteiro, a ser preenchida com o tamanho total, em bytes.

Retornar valor

Nenhum

Comentários

Para obter comentários e exemplos, consulte ID3D12Device::GetCopyableFootprints.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10 Build 20348
Servidor mínimo com suporte Windows 10 Build 20348
Cabeçalho d3d12.h
Biblioteca d3d12.lib
DLL d3d12.dll

Confira também