objet Stream-Output
Un objet de sortie de flux est un objet modèle qui diffuse des données de l’étape geometry-shader. Utilisez la syntaxe suivante pour déclarer un objet de sortie de flux.
inout StreamOutputObject<DataType>Name ; |
---|
Paramètres
-
StreamOutputObject<Datatype>Nom
-
Déclaration d’objet de sortie de flux (SO).
types d’objets Stream-Output Description PointStream Séquence de primitives de points LineStream Séquence de primitives de ligne TriangleStream Séquence de primitives triangle DataType : type de données de sortie ; peut être n’importe quel type de données HLSL. Doit être entouré par les crochets d’angle.
Nom - Nom de la variable ; chaîne ASCII qui identifie de manière unique l’objet.
Exemple
Il s’agit d’un exemple de déclaration d’objet de sortie de flux qui diffuse en continu des primitives triangle dont les données sont définies par la structure PS_CUBEMAP_IN. Le nuanceur geometry est limité à la génération de 18 sommets.
struct PS_CUBEMAP_IN
{
float4 Pos : SV_POSITION; // Projection coord
float2 Tex : TEXCOORD0; // Texture coord
uint RTIndex : SV_RenderTargetArrayIndex;
};
[maxvertexcount(18)]
void main( inout TriangleStream<PS_CUBEMAP_IN> CubeMapStream, triangle PS_CUBEMAP_INT[3] )
{
...
}
Il s’agit d’un extrait de code de l’exemple CubeMapGS.
méthodes d’objet Stream-Output
Utilisez la syntaxe suivante pour appeler des méthodes stream-output-object.
Object.Method
Les méthodes suivantes sont implémentées.
Méthodes | Description |
---|---|
Append | Ajoutez des données de sortie à un flux existant. |
RestartStrip | Terminez la bande primitive actuelle et commencez une nouvelle bande primitive. |
Modèle de nuanceur minimal
Cet objet est pris en charge dans les modèles de nuanceur suivants.
Modèle de nuanceur | Pris en charge |
---|---|
Nuanceur modèle 4 et modèles de nuanceur supérieur | Oui |
Rubriques connexes