共用方式為


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 和更高的著色器模型 是的

 

著色器模型 4