Application-Managed ressources et stratégies d’allocation (Direct3D 9)

Les ressources de vertex-buffer ou d’index-buffer managés ne peuvent pas être déclarées dynamiques en spécifiant D3DUSAGE_DYNAMIC au moment de la création. Cela nécessiterait une copie supplémentaire pour chaque modification apportée au contenu de la mémoire tampon de vertex. Les mémoires tampons de vertex dynamiques sont conçues pour le rendu de la géométrie dynamique et des données extraites à partir d’arborescences partitionnés dans l’espace binaire ou d’autres structures de données de visibilité. Pour ce faire, vous pouvez pré-allouer des mémoires tampons au format souhaité. Ces ressources sont ensuite extraites pour prendre en charge les besoins de l’application par un gestionnaire de ressources au sein de l’application. Le nombre total de tampons de vertex dynamiques est faible, car une application n’utilise simultanément que quelques pas de vertex différents et parce qu’une mémoire tampon de vertex différente est nécessaire uniquement pour les foulées uniques. Lors de la gestion des ressources dynamiques de cette façon, assurez-vous que les demandes à fréquence élevée sur les ressources ne diminuent pas considérablement les performances de l’application.

Lorsque vous utilisez des ressources gérées par Direct3D et des applications, allouez des ressources gérées par l’application dans D3DPOOL_DEFAULT mémoire avant de créer des ressources gérées par Direct3D. Cela permet au gestionnaire de mémoire de conserver un nombre précis de mémoire disponible.

Ressources Direct3D