Syntaxe
Paramètres
pResourceDesc [in]Type : const D3D12_RESOURCE_DESC * Description de la ressource, sous forme de pointeur vers une structure D3D12_RESOURCE_DESC. FirstSubresource [in]
Type : UINT Index de la première sous-ressource de la ressource. La plage des valeurs valides va de 0 à D3D12_REQ_SUBRESOURCES. NumSubresources [in]
Type : UINT Nombre de sous-ressources dans la ressource. La plage des 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 l’emplacement 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, alors pRowSizeInBytes retourne 128. pRowSizeInBytes ne doit pas être confondu avec le pas de ligne (row pitch), car l’examen de pLayouts et l’obtention du pas de ligne à partir de celui-ci vous donneront 256, puisqu’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 à remplir 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 la carte GPU, ce qui signifie que les valeurs ne varient pas d’une carte 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 remplir les structures de sous-ressources. Les applications ont accès à tous ces détails; cette méthode, ou une variante de celle-ci, pourrait donc être écrite dans le cadre 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
