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. Consultez aussi ID3D12Device::GetResourceAllocationInfo. En plus de la structure D3D12_RESOURCE_ALLOCATION_INFO retournée par la méthode, cette version retourne é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 à zéro. S’il y a plusieurs nœuds GPU, définissez des bits pour identifier les nœuds (les adaptateurs physiques du périphérique). Chaque bit du masque correspond à un seul nœud. Consultez aussi Systèmes multiadaptateurs. numResourceDescs [in]
Type : UINT
Le nombre de descripteurs de ressources 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 *
Un tableau de structures D3D12_RESOURCE_DESC qui décrivent les ressources sur lesquelles obtenir des informations. pResourceAllocationInfo1 [out]
Type : D3D12_RESOURCE_ALLOCATION_INFO1 *
Un 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 de retour

Type : D3D12_RESOURCE_ALLOCATION_INFO Une 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 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 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 lors des scénarios de rendu courants. Cela inclut même les textures qui ont des contraintes sur leur disposition 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 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 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 contenant deux petites ressources alignées sur 64 Ko et une petite ressource alignée sur 4 Mo indique 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

ID3D12Device4
Dernière modification le 6 octobre 2026