Puffertyp

Verwenden Sie die folgende Syntax, um eine Puffervariable zu deklarieren.

Puffer< > Typname;

Parameter

Puffer

Erforderliches Schlüsselwort.

Typ

Einer der Skalar-, Vektor-und einige Matrix-HLSL-Typen. Sie können eine Puffervariable mit einer Matrix deklarieren, solange sie in 4 32-Bit-Mengen passt. Sie können also Buffer<float2x2> schreiben. Ist jedoch Buffer<float4x4> zu groß, und der Compiler generiert einen Fehler.

Namen

Eine ASCII-Zeichenfolge, die den Variablennamen eindeutig identifiziert.

Beispiel

Hier sehen Sie ein Beispiel für eine Pufferdeklaration aus der Datei PipesGS.fx im PipesGS-Beispiel.

Buffer<float4> g_Buffer;

Daten werden aus einem Puffer mithilfe einer überladenen Version der systeminternen HlSL-Funktion Load gelesen, die einen Eingabeparameter (einen ganzzahligen Index) akzeptiert. Auf einen Puffer wird wie auf ein Array von Elementen zugegriffen. daher liest dieses Beispiel das zweite Element.

float4 bufferData = g_Buffer.Load( 1 );

Verwenden Sie die Streamausgabephase, um Daten in einen Puffer auszugeben.

Siehe auch

Datentypen (DirectX HLSL)