dcl_maxOutputVertexCount(sm4 - asm)

기하 도형 셰이더의 출력일 수 있는 최대 꼭짓점 수를 선언합니다.

dcl_maxOutputVertexCount count
항목 설명
count
[in] 1~n 사이(포함)의 부호 없는 32비트 정수입니다.

기하 도형 셰이더는 최대 1024의 32비트 값을 출력할 수 있습니다. 이 최댓값에는 입력 데이터의 크기와 셰이더에서 만든 데이터의 크기가 포함됩니다.

몇 가지 제한 사항은 다음과 같습니다.

  • 기하 도형 셰이더의 실행이 완료되기 전에 꼭짓점 수에 도달하면 셰이더가 종료됩니다.
  • 기하 도형 셰이더는 꼭짓점을 출력하기 전에 프로그램의 끝에 도달할 수 있습니다. 정상적인 상태입니다.
  • 기하 도형 셰이더를 디버그하는 경우 생성된 내보내기 명령 수를 계산하여 생성된 꼭짓점 수를 알릴 수 있습니다.

이 명령은 다음 셰이더 단계에 적용됩니다.

꼭짓점 셰이더 기하 도형 셰이더 픽셀 셰이더
x

이 명령은 어셈블리에서 셰이더 디버그를 돕기 위해 포함되었습니다. 셰이더 모델 4를 사용하여 어셈블리 언어로 셰이더를 작성할 수 없습니다.

다음은 몇 가지 예제입니다.

위치(.xyzw) 및 색상(.rgb)으로 구성된 입력 데이터를 가정합니다. 각 구성 요소는 1바이트를 사용합니다. 7바이트가 지정된 경우 셰이더가 생성할 수 있는 최대 꼭짓점 수는 1024 / (4 + 3) = 146입니다.

dcl_maxOutputVertexCount 146

기하 도형 셰이더가 4개 구성 요소 벡터 32개를 만든다고 가정합니다. 셰이더가 생성할 수 있는 최대 꼭짓점 수는 1024 / (32 * 4) = 8입니다.

dcl_maxOutputVertexCount 8

최소 셰이더 모델

이 함수는 다음 셰이더 모델에서 지원됩니다.

셰이더 모델 지원됨
셰이더 모델 5
셰이더 모델 4.1
셰이더 모델 4
셰이더 모델 3(DirectX HLSL) 아니요
셰이더 모델 2(DirectX HLSL) 아니요
셰이더 모델 1(DirectX HLSL) 아니요

셰이더 모델 4 어셈블리(DirectX HLSL)