다음을 통해 공유


Stream-Output 개체

스트림 출력 개체는 기하 도형 셰이더 단계데이터를 스트림하는 템플릿 기반 개체입니다. 다음 구문을 사용하여 스트림 출력 개체를 선언합니다.

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