Поделиться через


Append (объект Stream-Output DirectX HLSL)

Добавление данных geometry-shader-output в существующий поток.

Append( StreamDataType);

Параметры

Элемент Описание
StreamDataType
Описание входных данных. Это описание должно соответствовать параметру шаблона stream-object с именем DataType.

Возвращаемое значение

Нет

Пример

В этом фрагменте кода (из примера CubeMapGS) показан частичный пример добавления треугольных примитивов к объекту stream-output.

[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();
    }
}

Минимальная модель шейдера

Эта функция поддерживается в следующих моделях шейдеров.

Модель шейдера Поддерживается
Модель шейдера 4 да
Модель шейдера 3 (DirectX HLSL) нет
Модель шейдера 2 (DirectX HLSL) нет
Модель шейдера 1 (DirectX HLSL) нет

Объект Stream-Output