Création de ressources de diffusion en continu

Les ressources de streaming sont créées en spécifiant un indicateur lorsque vous créez une ressource, ce qui indique que la ressource est une ressource de streaming.

Les restrictions sur le moment où vous pouvez créer une ressource en tant que ressource de streaming sont décrites dans Paramètres de création de ressources de streaming.

Le stockage d’une ressource hors streaming est alloué dans le système graphique lors de la création de la ressource, par exemple l’allocation pour un tableau de textures 2D.

Lorsqu’une ressource de streaming est créée, le système graphique n’alloue pas le stockage pour le contenu de la ressource. Au lieu de cela, lorsqu’une application crée une ressource de streaming, le système graphique effectue une réservation d’espace d’adressage pour la surface de la surface en mosaïque uniquement, puis autorise le mappage des vignettes à contrôler par l’application. Le « mappage » d’une vignette est simplement l’emplacement physique en mémoire vers lequel pointe une vignette logique dans une ressource (ou NULL pour une vignette non mappée).

Ne confondez pas ce concept avec la notion de mappage d’une ressource Direct3D pour l’accès au processeur, qui, malgré l’utilisation du même nom, est complètement indépendante. Vous serez en mesure de définir et de modifier le mappage de chaque vignette individuellement en fonction des besoins, tout en sachant que toutes les vignettes d’une surface n’ont pas besoin d’être mappées à la fois, ce qui permet d’utiliser efficacement la quantité de mémoire disponible.

Dans cette section

Rubrique Description

Mappages dans un pool de vignettes

Lorsqu’une ressource est créée en tant que ressource de diffusion en continu, les vignettes qui la composent proviennent du pointage vers des emplacements dans un pool de vignettes. Un pool de vignettes est un pool de mémoire (soutenu par une ou plusieurs allocations en arrière-plan - invisibles par l’application).

Paramètres de création de ressources de diffusion en continu

Il existe certaines contraintes sur le type de ressources Direct3D que vous pouvez créer en tant que ressource de streaming.

Paramètres de création d’un pool de vignettes

Utilisez les paramètres de cette section pour définir des pools de vignettes lors de la création d’une mémoire tampon.

Partage de ressources de diffusion en continu avec des processus et des appareils

Les pools de vignettes peuvent être partagés avec d’autres processus, tout comme les ressources traditionnelles. Les ressources de streaming qui référencent des pools de vignettes ne peuvent pas être partagées entre les appareils et les processus.

Opérations disponibles sur les ressources de diffusion en continu

Cette section répertorie les opérations que vous pouvez effectuer sur les ressources de streaming.

Opérations disponibles sur les pools de vignettes

Les opérations sur les pools de vignettes incluent le redimensionnement d’un pool de vignettes, l’offre de ressources (en fournissant temporairement de la mémoire au système pour l’ensemble du pool de vignettes) et la récupération de ressources.

Restitution de la surface d’une ressource de diffusion en continu sous forme de mosaïque

Lorsque vous créez une ressource de diffusion en continu, les dimensions, la taille de l’élément de format et le nombre de mipmaps et/ou de tranches de tableau (le cas échéant) déterminent le nombre de vignettes requises pour sauvegarder l’ensemble de la surface d’exposition.

 

Ressources de diffusion en continu