Stream-Output 物件
資料流輸出對像是樣板化物件,會將資料串流出 geometry-shader 階段。 使用下列語法來宣告數據流輸出物件。
inout StreamOutputObject<DataType>Name; |
---|
參數
-
StreamOutputObject<DataType>Name
-
數據流輸出物件 (SO) 宣告。
Stream-Output 物件類型 描述 PointStream 點基本類型序列 LineStream 線條基本類型序列 TriangleStream 三角形基本類型的序列 DataType - 輸出數據類型;可以是任何 HLSL 資料類型。 必須以角括弧括住。
名稱 - 變數名稱;可唯一識別物件的 ASCII 字串。
例
這是數據流輸出物件宣告的範例,其數據流輸出物件宣告會串流出三角形基本類型,其數據是由PS_CUBEMAP_IN結構所定義。 幾何著色器僅限於產生18個頂點。
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] )
{
...
}
這是來自 CubeMapGS 範例的代碼段。
Stream-Output 物件方法
使用下列語法來呼叫 stream-output-object 方法。
Object.Method
實作下列方法。
方法 | 描述 |
---|---|
附加 | 將輸出資料附加至現有的數據流。 |
RestartStrip | 結束目前的基本等量,並啟動新的基本等量。 |
最小著色器模型
下列著色器模型中支援此物件。
著色器模型 | 支援 |
---|---|
著色器模型 4 和更高的著色器模型 | 是的 |
相關主題