緩衝區類型
使用下列語法來宣告緩衝區變數。
緩衝區 <類型>名稱; |
---|
參數
-
緩衝區
-
必要關鍵字。
-
類型
-
其中一個 純量、 向量和一些 矩陣 HLSL 類型。 只要其符合 4 32 位數量,您就可以使用矩陣來宣告緩衝區變數。 因此,您可以撰寫
Buffer<float2x2>
。 但Buffer<float4x4>
太大,編譯器將會產生錯誤。 -
名字
-
可唯一識別變數名稱的 ASCII 字串。
範例
以下是緩衝區宣告的範例。
Buffer<float4> g_Buffer;
資料會使用 Load HLSL 內建函式的多載版本從緩衝區讀取,該函式會採用一個輸入參數 (整數索引) 。 緩衝區的存取方式就像元素陣列一樣;因此,此範例會讀取第二個專案。
float4 bufferData = g_Buffer.Load( 1 );
使用 資料流程輸出階段 將資料輸出至緩衝區。
備註
必須有相容的具類型緩衝區著色器資源檢視, (SRV) 才能從緩衝區正確載入。 載入可以選擇性地執行類型轉換,例如可以將 RGBA8_UNORM 緩衝區載入 float4
變數中。 針對緩衝區串連結構,請改用 StructuredBuffer 。