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 suballocar espaço em heaps de upload.

Syntax

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

Parameters

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 da primeira sub-fonte 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, que é adicionado ao Deslocamento de cada D3D12_PLACED_SUBRESOURCE_FOOTPRINT na matriz pLayouts .

pLayouts

Tipo: [out, opcional] D3D12_PLACED_SUBRESOURCE_FOOTPRINT*

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

pNumRows

Tipo: [out, opcional] UINT*

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

pRowSizeInBytes

Tipo: [out, opcional] UINT64*

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

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 o tom de linha, pois examinar pLayouts e obter o arremesso de linha a partir disso 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. Se pResourceDesc for inválido, o valor de pTotalBytes será definido como UINT64_MAX.

Valor de retorno

None

Remarks

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

Requirements

Requirement Value
Cliente mínimo suportado Windows 10 Build 20348
Servidor mínimo compatível Windows 10 Build 20348
Header d3d12.h
Library d3d12.lib
DLL d3d12.dll

Consulte também