Partager via


Suivi des risques ou ressources d’un pool de vignettes

Pour les ressources qui ne sont pas diffusées en continu, Direct3D peut empêcher certaines conditions de danger pendant le rendu, mais étant donné que le suivi des risques se ferait au niveau de la vignette pour les ressources de diffusion en continu, le suivi des conditions de risque pendant le rendu des ressources de diffusion en continu peut être trop coûteux.

Par exemple, pour les ressources hors diffusion en continu, le runtime n’autorise pas la liaison d’une sous-ressource donnée en tant qu’entrée (telle qu’un mode de ressources nuanceur) et en tant que sortie (telle qu’une vue cible de rendu) en même temps Si un tel cas est rencontré, le runtime dissocie l’entrée. Cette surcharge de suivi dans le runtime est peu coûteuse et s’effectue au niveau de la sous-ressource. L’un des avantages de cette surcharge de suivi est de réduire les risques que les applications dépendent accidentellement de l’ordre d’exécution du nuanceur matériel. L’ordre d’exécution du nuanceur matériel peut varier si ce n’est pas sur une unité de traitement graphique (GPU) donnée, alors certainement sur différents GPU.

Le suivi de la façon dont les ressources sont liées peut être trop coûteux pour les ressources de diffusion en continu, car le suivi est au niveau d’une vignette. De nouveaux problèmes se produisent, tels que la validation éventuelle des tentatives de rendu dans une vue cible de rendu avec une vignette mappée simultanément à plusieurs zones de la surface. S’il s’avère que ce suivi des risques par vignette est trop coûteux pour le runtime, dans l’idéal, cela serait au moins une option dans la couche de débogage.

Une application doit informer le pilote d’affichage lorsqu’elle a émis une opération d’écriture ou de lecture sur une ressource de streaming qui fait référence à la mémoire du pool de vignettes qui sera également référencée par des ressources de diffusion en continu distinctes dans les prochaines opérations de lecture ou d’écriture qu’elle attend la première opération avant que les opérations suivantes puissent commencer.

Mappages dans un pool de vignettes