Syntaxe
Paramètres
pResourceDesc [in]Type : const D3D12_RESOURCE_DESC * Description de la ressource, sous la forme d’un pointeur vers une structure D3D12_RESOURCE_DESC. FirstSubresource [in]
Type : UINT Index de la première sous-ressource de la ressource. La plage de valeurs valides va de 0 à D3D12_REQ_SUBRESOURCES. NumSubresources [in]
Type : UINT Nombre de sous-ressources de la ressource. La plage de valeurs valides va de 0 à (D3D12_REQ_SUBRESOURCES - FirstSubresource). BaseOffset
Type : UINT64 Décalage, en octets, de la ressource. pLayouts [out, optional]
Type : D3D12_PLACED_SUBRESOURCE_FOOTPRINT * Pointeur vers un tableau (de longueur NumSubresources) de structures D3D12_PLACED_SUBRESOURCE_FOOTPRINT, à remplir avec la description et le placement de chaque sous-ressource. pNumRows [out, optional]
Type : UINT * Pointeur vers un tableau (de longueur NumSubresources) de variables entières, à remplir avec le nombre de lignes de chaque sous-ressource. pRowSizeInBytes [out, optional]
Type : UINT64 * Pointeur vers un tableau (de longueur NumSubresources) de variables entières, chaque entrée devant être remplie avec la taille sans remplissage, en octets, d’une ligne de chaque sous-ressource. Par exemple, si une ressource Texture2D a une largeur de 32 et 4 octets par pixel, pRowSizeInBytes retourne 128. pRowSizeInBytes ne doit pas être confondu avec le pas de ligne (row pitch) : en examinant pLayouts et en obtenant le pas de ligne à partir de celui-ci, vous obtiendrez 256, car il est aligné sur D3D12_TEXTURE_DATA_PITCH_ALIGNMENT. pTotalBytes [out, optional]
Type : UINT64 * Pointeur vers une variable entière, à remplir avec la taille totale, en octets.
Valeur de retour
Type : void Aucune.Remarques
Cette routine aide l’application à renseigner les structures D3D12_PLACED_SUBRESOURCE_FOOTPRINT et D3D12_SUBRESOURCE_FOOTPRINT lors de la sous-allocation d’espace dans les tas de chargement. Les structures obtenues sont indépendantes de l’adaptateur GPU, ce qui signifie que les valeurs ne varient pas d’un adaptateur GPU à l’autre. GetCopyableFootprints utilise les détails spécifiés concernant les formats de ressource, les dispositions de texture et les exigences d’alignement (provenant de la structure D3D12_RESOURCE_DESC) pour renseigner les structures de sous-ressources. Les applications ont accès à tous ces détails ; cette méthode, ou une variante, pourrait donc être écrite au sein de l’application.Exemples
L’exemple D3D12Multithreading utilise ID3D12Device::GetCopyableFootprints comme suit :Configuration requise
En-tête : d3d12_xs.h ou d3d12_x.hBibliothèque : d3d12_xs.lib ou d3d12_x.lib
Plateformes prises en charge : consoles XBOX Series et famille XBOX One
