스트림 출력 개체
스트림 출력 개체는 기하 도형 셰이더 단계에서 데이터를 스트림하는 템플릿 기반 개체입니다. 다음 구문을 사용하여 스트림 출력 개체를 선언합니다.
inout StreamOutputObject<DataType>Name; |
---|
매개 변수
-
StreamOutputObject<DataType>Name
-
SO(스트림 출력) 개체 선언입니다.
스트림 출력 개체 형식 설명 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-object 메서드를 호출합니다.
Object.Method
구현되는 메서드는 다음과 같습니다.
메서드 | 설명 |
---|---|
Append | 기존 스트림에 출력 데이터를 추가합니다. |
RestartStrip | 현재 기본 스트립을 종료하고 새 기본 스트립을 시작합니다. |
최소 셰이더 모델
이 개체는 다음 셰이더 모델에서 지원됩니다.
셰이더 모델 | 지원됨 |
---|---|
셰이더 모델 4 이상의 셰이더 모델 | 예 |
관련 항목