Append (DirectX HLSL Stream-Output Object)

Append geometry-shader-output data to an existing stream.

Append( StreamDataType);

Parameters

Item Description
StreamDataType
A data input description. This description must match the stream-object template parameter called DataType.

Return Value

None

Example

This code snippet (from the CubeMapGS Sample) shows a partial example of appending triangle strip primitives to a stream-output object.

[maxvertexcount(18)]
void GS_CubeMap( triangle GS_CUBEMAP_IN input[3], 
                 inout TriangleStream<PS_CUBEMAP_IN> CubeMapStream )
{
    for( int f = 0; f < 6; ++f )
    {
        // Compute screen coordinates
        PS_CUBEMAP_IN output;
        output.RTIndex = f;
        for( int v = 0; v < 3; v++ )
        {
            output.Pos = mul( input[v].Pos, g_mViewCM[f] );
            output.Pos = mul( output.Pos, mProj );
            output.Tex = input[v].Tex;
            CubeMapStream.Append( output );
        }
        CubeMapStream.RestartStrip();
    }
}

Minimum Shader Model

This function is supported in the following shader models.

Shader Model Supported
Shader Model 4 yes
Shader Model 3 (DirectX HLSL) no
Shader Model 2 (DirectX HLSL) no
Shader Model 1 (DirectX HLSL) no

Stream-Output Object