Skip to main content
Obtient la taille et l’alignement de la mémoire requise pour une collection de ressources sur cet adaptateur. Cette API accepte en entrée des structures D3D12_RESOURCE_DESC1, ce qui la rend adaptée au calcul de la taille des ressources de carte de rétroaction.

Syntaxe

Paramètres

visibleMask   
Type : UINT
Pour XBOX, définissez cette valeur sur zéro. numResourceDescs   
Type : UINT
Nombre de descripteurs de ressources dans le tableau pResourceDescs. pResourceDescs   _In_reads_(numResourceDescs)
Type : D3D12_RESOURCE_DESC1*
Tableau de structures D3D12_RESOURCE_DESC1 qui décrivent les ressources sur lesquelles obtenir des informations. pResourceAllocationInfo1   _Out_writes_opt_(numResourceDescs)
Type : D3D12_RESOURCE_ALLOCATION_INFO1*
Tableau de structures D3D12_RESOURCE_ALLOCATION_INFO1 dans lequel seront écrites les informations d’allocation de chaque ressource référencée par le tableau d’entrée pResourceDescs.

Valeur de retour

Type : D3D12_RESOURCE_ALLOCATION_INFO Structure D3D12_RESOURCE_ALLOCATION_INFO qui fournit des informations sur la mémoire vidéo allouée pour le tableau de ressources spécifié.

Remarques

Lorsque vous utilisez CreatePlacedResource, votre application doit utiliser GetResourceAllocationInfo pour connaître les caractéristiques de taille et d’alignement des ressources de texture. Les résultats de cette méthode varient selon l’adaptateur et doivent être considérés comme propres à cet adaptateur et à cette version du pilote. Votre application ne peut pas utiliser la sortie de GetResourceAllocationInfo pour connaître les propriétés des mips compactés des textures. Pour connaître les propriétés des mips compactés des textures, votre application doit utiliser GetResourceTiling. La taille des ressources de texture diffère considérablement des informations retournées par GetResourceTiling, car certaines architectures d’adaptateur allouent de la mémoire supplémentaire aux textures afin de réduire la bande passante effective dans les scénarios de rendu courants. Cela inclut même les textures dont les dispositions de texture sont soumises à des contraintes ou sont standardisées. Cette mémoire supplémentaire ne peut pas être mappée de façon éparse ni remappée par une application à l’aide de CreateReservedResource et UpdateTileMappings; elle n’est donc pas signalée par GetResourceTiling. Votre application peut se passer de GetResourceAllocationInfo pour les ressources de tampon (D3D12_RESOURCE_DIMENSION_BUFFER). Les tampons ont la même taille sur tous les adaptateurs, soit simplement le plus petit multiple de 64 Ko qui est supérieur ou égal à D3D12_RESOURCE_DESC::Width. Lorsque plusieurs descriptions de ressources sont transmises, l’algorithme C++ de calcul de la taille et de l’alignement d’une structure est utilisé. Par exemple, un tableau de trois éléments comportant deux petites ressources alignées sur 64 Ko et une petite ressource alignée sur 4 Mo signale des tailles différentes selon l’ordre du tableau. Si la ressource alignée sur 4 Mo se trouve au milieu, la valeur Size obtenue est de 12 Mo. Sinon, la valeur Size obtenue est de 8 Mo. La valeur Alignment retournée est toujours de 4 Mo, car il s’agit du surensemble de tous les alignements du tableau de ressources.

Configuration requise

En-tête : d3d12_xs.h Bibliothèque : d3d12_xs.lib
Plateformes prises en charge : consoles XBOX Series

Voir aussi

Vue d’ensemble de l’API Direct3D 12 de rétroaction de l’échantillonneur ID3D12Device8
Last modified on October 6, 2026