HLSL 프로그래밍 가이드
데이터는 그래픽 파이프라인을 기본 형식의 스트림으로 입력하고 셰이더 단계에서 처리됩니다. 실제 셰이더 단계는 Direct3D 버전에 따라 달라지지만 꼭짓점, 픽셀 및 기하 도형 단계는 확실히 포함됩니다. 다른 단계에는 테셀레이션을 위한 헐 및 도메인 셰이더와 컴퓨팅 셰이더가 포함됩니다. 이러한 단계는 상위 수준 음영 언어(HLSL)를 사용하여 완전히 프로그래밍할 수 있습니다.
HLSL 셰이더는 작성자 시간 또는 런타임에 컴파일되고 런타임에 적절한 파이프라인 단계로 설정할 수 있습니다. Direct3D 9 셰이더는 셰이더 모델 1, 셰이더 모델 2 및 셰이더 모델 3사용하여 설계할 수 있습니다. Direct3D 10 셰이더는 셰이더 모델 4만 디자인할 수 있습니다. Direct3D 11 셰이더는 셰이더 모델 5설계할 수 있습니다. Direct3D 11.3 및 Direct3D 12는 셰이더 모델 5.1설계할 수 있으며 Direct3D 12는 셰이더 모델 6설계할 수도 있습니다.
이 섹션에서는
주제 | 묘사 |
---|---|
셰이더 연결 사용 | 미리 컴파일된 HLSL 함수를 만들고, 라이브러리에 패키지하고, 런타임에 전체 셰이더에 연결하는 방법을 보여 줍니다. |
Direct3D 9 HLSL 셰이더 작성 | |
Direct3D 9 셰이더 사용 | |
Direct3D 10 셰이더를 사용하는 | |
HLSL 셰이더 최적화 | |
Visual Studio 디버깅 셰이더 | 이제 셰이더 디버깅을 위한 최신 도구가 Visual Studio 그래픽 디버거라는 Microsoft Visual Studio의 기능으로 제공됩니다. |
셰이더 컴파일 | 이제 셰이더 코드에 대한 파일 확장명용 셰이더 코드 및 규칙을 컴파일하는 다양한 방법을 살펴보겠습니다. |
컴파일러 대상 지정 | 여기서는 D3DCompile* 함수 및 HLSL 컴파일러가 지원하는 다양한 프로필의 대상을 나열합니다. |
In-Place 이미지 편집 대한 압축 풀기 및 압축 DXGI_FORMAT | |
HLSL 최소 정밀도 사용 | Windows 8부터 그래픽 드라이버는 지정된 비트 정밀도보다 크거나 같은 전체 자릿수를 사용하여 최소 정밀도 HLSL 스칼라 데이터 형식을 구현할 수 있습니다. |
HLSL 셰이더 모델 5 | |
HLSL 셰이더 모델 5.1 | 이 섹션에서는 D3D12 및 D3D11.3에 실제로 적용되는 셰이더 모델 5.1의 기능에 대해 설명합니다. 모든 DirectX 12 하드웨어는 셰이더 모델 5.1을 지원합니다. |
HLSL 셰이더 모델 6.0 | HLSL 셰이더 모델 6.0에 추가된 웨이브 작업 내장 함수에 대해 설명합니다. |
HLSL 셰이더 모델 6.4 | HLSL 셰이더 모델 6.4에 추가된 기계 학습 내장 함수에 대해 설명합니다. |