ID3D11Device3::CreateTexture3D1, méthode (d3d11_3.h)

Crée une texture 3D.

Syntaxe

HRESULT CreateTexture3D1(
  [in]            const D3D11_TEXTURE3D_DESC1  *pDesc1,
  [in, optional]  const D3D11_SUBRESOURCE_DATA *pInitialData,
  [out, optional] ID3D11Texture3D1             **ppTexture3D
);

Paramètres

[in] pDesc1

Type : const D3D11_TEXTURE3D_DESC1*

Pointeur vers une structure D3D11_TEXTURE3D_DESC1 qui décrit une ressource de texture 3D. Pour créer une ressource sans type qui peut être interprétée au moment de l’exécution dans différents formats compatibles, spécifiez un format sans type dans la description de la texture. Pour générer automatiquement des niveaux mipmap, définissez le nombre de niveaux de mipmap sur 0.

[in, optional] pInitialData

Type : const D3D11_SUBRESOURCE_DATA*

Pointeur vers un tableau de structures D3D11_SUBRESOURCE_DATA qui décrivent des sous-ressources pour la ressource de texture 3D. Les applications ne peuvent pas spécifier null pour pInitialData lors de la création de ressources IMMUTABLE (voir D3D11_USAGE). Si la ressource est multi-échantillonnée, pInitialData doit avoir la valeur NULL , car les ressources à échantillonnage multiple ne peuvent pas être initialisées avec des données lors de leur création.

Si vous ne passez rien à pInitialData, le contenu initial de la mémoire de la ressource n’est pas défini. Dans ce cas, vous devez écrire le contenu de la ressource d’une autre manière avant que la ressource soit lue.

Vous pouvez déterminer la taille de ce tableau à partir de la valeur dans le membre MipLevels de la structure D3D11_TEXTURE3D_DESC1 vers laquelle pDesc1 pointe. Les tableaux de textures de volume 3D ne sont pas pris en charge.

Pour plus d’informations sur cette taille de tableau, consultez Remarques.

[out, optional] ppTexture3D

Type : ID3D11Texture3D1**

Pointeur vers un bloc de mémoire qui reçoit un pointeur vers une interface ID3D11Texture3D1 pour la texture créée. Définissez ce paramètre sur NULL pour valider les autres paramètres d’entrée (la méthode retourne S_FALSE si les autres paramètres d’entrée réussissent la validation).

Valeur retournée

Type : HRESULT

Si la méthode réussit, le code de retour est S_OK. Consultez Codes de retour Direct3D 11 pour connaître les codes d’erreur défaillants.

Remarques

CreateTexture3D1 crée une ressource de texture 3D, qui peut contenir un certain nombre de sous-ressources 3D. Le nombre de textures est spécifié dans la description de la texture. Toutes les textures d’une ressource doivent avoir le même format, la même taille et le même nombre de niveaux de mipmap.

Toutes les ressources sont constituées d’une ou plusieurs sous-ressources. Pour charger des données dans la texture, les applications peuvent fournir les données initialement sous la forme d’un tableau de structures D3D11_SUBRESOURCE_DATA pointées par pInitialData, ou utiliser l’une des fonctions de texture D3DX telles que D3DX11CreateTextureFromFile.

Chaque élément de pInitialData fournit toutes les tranches définies pour un miplevel donné. Par exemple, pour une texture de volume de 32 x 32 x 4 avec une chaîne mipmap complète, le tableau comporte les 6 éléments suivants :

  • pInitialData[0] = 32x32 avec 4 tranches
  • pInitialData[1] = 16x16 avec 2 tranches
  • pInitialData[2] = 8x8 avec 1 tranche
  • pInitialData[3] = 4x4 avec 1 tranche
  • pInitialData[4] = 2x2 avec 1 tranche
  • pInitialData[5] = 1x1 avec 1 tranche

Configuration requise

   
Client minimal pris en charge Windows 10 (applications de bureau uniquement)
Serveur minimal pris en charge Windows Server 2016 (applications de bureau uniquement)
Plateforme cible Windows
En-tête d3d11_3.h
Bibliothèque D3D11.lib

Voir aussi

ID3D11Device3