Propriétés de ressource (Direct3D 9)

Toutes les ressources partagent les propriétés suivantes.

  • L’utilisation. La façon dont une ressource est utilisée, par exemple, en tant que texture ou cible de rendu.
  • Formater. Format des données, par exemple, le format de pixel d’une surface 2D.
  • Piscine. Type de mémoire dans lequel la ressource est allouée.
  • Type. Type de ressource, par exemple, une mémoire tampon de vertex ou une cible de rendu.

Les utilisations des ressources sont appliquées. Une application qui utilisera une ressource dans une certaine opération doit spécifier cette opération au moment de la création de la ressource. Pour obtenir la liste des constantes d’utilisation définies pour les ressources, consultez D3DUSAGE.

Les constantes D3DUSAGE_RTPATCHES, D3DUSAGE_NPATCHES et D3DUSAGE_POINTS indiquent au pilote que les données de ces mémoires tampons sont susceptibles d’être utilisées pour des correctifs triangulaires ou de grille, des correctifs de N ou des sprites de points, respectivement. Ces indicateurs sont fournis dans le cas où le matériel ne peut pas effectuer ces opérations sans traitement de l’hôte. Par conséquent, le pilote souhaite allouer ces surfaces dans la mémoire système afin que le processeur puisse y accéder. Si le pilote peut effectuer ces opérations entièrement dans du matériel, il peut allouer ces surfaces en vidéo ou en mémoire AGP pour éviter une copie de l’hôte et améliorer au moins deux fois les performances. Notez que les informations fournies par ces indicateurs ne sont pas absolument requises. Un pilote peut détecter que de telles opérations sont effectuées sur les données, et il déplacera la mémoire tampon vers la mémoire système pour les images suivantes.

Pour plus d’informations sur les indicateurs d’utilisation et leur relation avec des ressources spécifiques, consultez les pages de référence sur les méthodes de création de ressources individuelles.

Pour plus d’informations sur le format de surface des ressources, consultez le type énuméré D3DFORMAT .

La classe de mémoire qui contient les mémoires tampons d’une ressource est appelée pool. Les valeurs de pool sont définies par le type énuméré D3DPOOL . Un pool ne peut pas être mélangé pour différents objets contenus dans une seule ressource , c’est-à-dire des niveaux mip dans un mipmap et, lorsqu’un pool est choisi pour une ressource, le pool ne peut pas être modifié.

Les types de ressources sont définis implicitement au moment de l’exécution lorsque l’application appelle une méthode de création de ressources telle que IDirect3DDevice9::CreateCubeTexture. Les types de ressources sont définis par le type énuméré D3DRESOURCETYPE . Les applications peuvent interroger ces types au moment de l’exécution ; toutefois, il est prévu que la plupart des scénarios ne nécessitent pas de vérification du type d’exécution.

Ressources Direct3D