Passer au contenu principal
Obtient des informations détaillées sur la taille et l’alignement de la mémoire requise pour une collection de ressources sur cet adaptateur. Voir aussi ID3D12Device::GetResourceAllocationInfo. En plus de la structure D3D12_RESOURCE_ALLOCATION_INFO renvoyée par la méthode, cette version renvoie également un tableau de structures D3D12_RESOURCE_ALLOCATION_INFO1, qui fournissent des détails supplémentaires pour chaque description de ressource passée en entrée. Consultez le paramètre pResourceAllocationInfo1.

Syntaxe

Paramètres

visibleMask [in]
Type : UINT
Pour un fonctionnement avec un seul GPU, définissez cette valeur sur zéro. S’il existe plusieurs nœuds GPU, définissez des bits pour identifier les nœuds (les adaptateurs physiques de l’appareil). Chaque bit du masque correspond à un seul nœud. Voir aussi Systèmes multi-adaptateurs. numResourceDescs [in]
Type : UINT
Nombre de descripteurs de ressource dans le tableau pResourceDescs. Il s’agit également de la taille (le nombre d’éléments) de pResourceAllocationInfo1. pResourceDescs [in]
Type : const D3D12_RESOURCE_DESC *
Tableau de structures D3D12_RESOURCE_DESC qui décrivent les ressources sur lesquelles obtenir des informations. pResourceAllocationInfo1 [out]
Type : D3D12_RESOURCE_ALLOCATION_INFO1 *
Tableau de structures D3D12_RESOURCE_ALLOCATION_INFO1 contenant des détails supplémentaires pour chaque description de ressource passée en entrée. Cela permet à votre application d’allouer plus simplement un tas pour plusieurs ressources, sans calculer manuellement les décalages indiquant où chaque ressource doit être placée.

Valeur renvoyée

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 afin de 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 concerné et doivent être considérés comme propres à cet adaptateur et à cette version de pilote. Votre application ne peut pas utiliser la sortie de GetResourceAllocationInfo pour connaître les propriétés des mips empaquetés des textures. Pour connaître les propriétés des mips empaquetés des textures, votre application doit utiliser GetResourceTiling. La taille des ressources de texture diffère considérablement des informations renvoyé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 sont soumises à des contraintes ou qui ont des dispositions de texture standardisées. Cette mémoire supplémentaire ne peut être ni 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 type tampon (D3D12_RESOURCE_DIMENSION_BUFFER). Les tampons ont la même taille sur tous les adaptateurs, à savoir simplement le plus petit multiple de 64 Ko supérieur ou égal à D3D12_RESOURCE_DESC::Width. Lorsque plusieurs descriptions de ressources sont passées, 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 renvoyée est toujours de 4 Mo, car il s’agit du sur-ensemble 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

ID3D12Device4
Dernière modification le 6 octobre 2026