Syntaxe
Membres
ViewInstanceCountType : UINT Spécifie le nombre de vues à utiliser, jusqu’à D3D12_MAX_VIEW_INSTANCE_COUNT. pViewInstanceLocations
Type : const D3D12_VIEW_INSTANCE_LOCATION * Adresse d’un emplacement mémoire qui contient ViewInstanceCount structures d’emplacement d’instance de vue, lesquelles spécifient l’emplacement des détails de fenêtre d’affichage/rectangle de découpe et de cible de rendu de chaque instance de vue. Flags
Type : D3D12_VIEW_INSTANCING_FLAGS Configure l’instanciation de vue avec des options supplémentaires.
Remarques
L’instanciation de vue est déclarée dans un PSO à l’aide de cette structure. Le nombre d’instances de vue est défini dans le PSO pour permettre une optimisation de l’ensemble du pipeline en fonction du nombre de vues. L’instanciation de vue est désactivée lorsqu’elle n’est pas déclarée dans le PSO ou lorsque ViewInstanceCount est défini sur 0. Lorsqu’elle est désactivée, le rendu se comporte comme si l’instanciation de vue était activée et que ViewInstanceCount était défini sur 1 ; les nuanceurs ne voient que la valeur 0 dans SV_ViewID et une seule instance de vue est produite. Cela permet aux nuanceurs qui prennent en charge l’instanciation de vue d’être tout de même utilisés dans des PSO qui la désactivent. Certains adaptateurs peuvent prendre en charge le modèle de nuanceur 6.1 (qui expose SV_ViewID) mais pas l’instanciation de vue ; ces adaptateurs doivent tout de même prendre en charge les nuanceurs qui reçoivent SV_ViewID en entrée dans des PSO qui déclarent ViewInstanceCount à 0 ou 1. Le nuanceur précédant la rastérisation peut générer des valeurs SV_RenderTargetArrayIndex et SV_ViewportArrayIndex qui ne dépendent pas nécessairement de SV_ViewID. Pour calculer l’index effectif final de la fenêtre d’affichage et de la cible de rendu auxquelles les primitives seront envoyées, ces valeurs, lorsqu’elles sont présentes, sont ajoutées aux valeurs ViewportArrayIndex et RenderTargetArrayIndex des emplacements d’instance de vue déclarés dans le PSO. Si un index calculé est hors limites (c’est-à-dire lorsque l’index est supérieur au nombre d’éléments de fenêtre d’affichage ou de cible de rendu dans leurs tableaux respectifs), l’index effectif devient 0. Pour les nuanceurs qui sélectionnent dynamiquement les index de fenêtre d’affichage ou de cible de rendu, une application peut définir tous les emplacements d’instance de vue déclarés dans le PSO sur une valeur unique (par exemple 0) afin qu’elle serve d’index de base uniforme auquel sont ajoutées les valeurs SV_RenderTargetArrayIndex et SV_ViewportArrayIndex sélectionnées dynamiquement.Configuration requise
En-tête : d3d12_xs.h ou d3d12_x.hBibliothèque : d3d12_xs.lib ou d3d12_x.lib
Plateformes prises en charge : consoles XBOX Series et famille XBOX One
