D3DCompile, D3DCompile2또는 D3DCompileFromFile 함수를 호출할 때 컴파일하려면 셰이더 대상(셰이더 기능 집합)을 지정해야 합니다. 여기서는 D3DCompile* 함수 및 HLSL 컴파일러가 지원하는 다양한 프로필의 대상을 나열합니다.
- Direct3D 11.0 및 11.1 기능 수준
- Direct3D 10.1 기능 수준
- Direct3D 10.0 기능 수준
- Direct3D 9.1, 9.2 및 9.3 기능 수준
- 구형 Direct3D 9 셰이더 모델 3.0
- 레거시 Direct3D 9 셰이더 모델 2.0
- 레거시 Direct3D 9 셰이더 모델 1.x
- 레거시 효과
- 노트
- 관련 항목
Direct3D 11.0 및 11.1 기능 수준
Direct3D 11.0 및 11.1의 기능 수준이 지원하는 셰이더 대상은 다음과 같습니다..
목표 | 묘사 |
---|---|
cs_5_0 | DirectCompute 5.0(컴퓨팅 셰이더) |
ds_5_0 | 도메인 셰이더 |
gs_5_0 | 기하 도형 셰이더 |
hs_5_0 | 헐 셰이더 |
ps_5_0 | 픽셀 셰이더 |
vs_5_0 | 꼭짓점 셰이더 |
Direct3D 10.1 기능 수준
다음은 Direct3D 10.1 기능 수준 지원하는 셰이더 대상입니다.
목표 | 묘사 |
---|---|
cs_4_1 | DirectCompute 4.1 (컴퓨팅 셰이더)1 |
gs_4_1 | 지오메트리 셰이더 |
ps_4_1 | 픽셀 셰이더 |
vs_4_1 | 꼭짓점 셰이더 |
Direct3D 10.0 기능 수준
다음은 Direct3D 10.0 기능 수준 지원하는 셰이더 대상입니다.
목표 | 설명 |
---|---|
cs_4_0 | DirectCompute 4.0(컴퓨팅 셰이더)1 |
gs_4_0 | 기하 도형 셰이더 |
ps_4_0 | 픽셀 셰이더 |
vs_4_0 | 버텍스 셰이더 |
Direct3D 9.1, 9.2 및 9.3 기능 수준
Direct3D 기능 수준 9.1, 9.2 및 9.3 이 지원하는 셰이더 대상은 다음과 같습니다.
메모
*_4_0_level_9_x HLSL 셰이더 프로필을 사용하는 경우 셰이더 모델 2.x 프로필을 암시적으로 사용하여 Direct3D 9 지원 하드웨어를 지원합니다. 셰이더 모델 2.x 프로필은 셰이더 모델 4.x 이상 프로필보다 더 제한된 흐름 제어 동작을 지원합니다.
타겟 | 묘사 |
---|---|
ps_4_0_level_9_1 | 9.1 및 9.2에 대한 픽셀 셰이더(ps_2_0 유사한 제한)
|
ps_4_0_level_9_3 | 9.3용 픽셀 셰이더(추가 셰이더 기능이 포함된 ps_2_x²과 유사한 한계)
|
vs_4_0_level_9_1 |
꼭짓점 셰이더 9.1 및 9.2(vs_2_0 유사)
|
vs_4_0_level_9_3 |
버텍스 셰이더 9.3(추가 셰이더 기능 및 인스턴싱이 포함된 vs_2_a²와 유사)
|
레거시 Direct3D 9 셰이더 모델 3.0
레거시 Direct3D 9 셰이더 모델 3.0의 셰이더 대상은 다음과 같습니다.
목표 | 묘사 |
---|---|
ps_3_0 | 픽셀 셰이더 3.0 |
ps_3_sw | 픽셀 셰이더 3.0(소프트웨어) |
vs_3_0 | 버텍스 셰이더 3.0 |
vs_3_sw | 버텍스 셰이더 3.0 (소프트웨어) |
레거시 Direct3D 9 셰이더 모델 2.0
레거시 Direct3D 9 셰이더 모델 2.0의 셰이더 대상은 다음과 같습니다.
목표 | 묘사 |
---|---|
ps_2_0 | 픽셀 셰이더 2.0 |
ps_2_a | 픽셀 셰이더 2a |
ps_2_b | 픽셀 셰이더 2b |
ps_2_sw | 픽셀 셰이더 2.0 소프트웨어 |
vs_2_0 | 버텍스 셰이더 2.0 |
vs_2_a | 꼭짓점 셰이더 2a |
vs_2_sw | 버텍스 셰이더 2.0 소프트웨어 |
레거시 Direct3D 9 셰이더 모델 1.x
레거시 Direct3D 9 셰이더 모델 1.x의 셰이더 대상은 다음과 같습니다.
과녁 / 목표 | 묘사 |
---|---|
tx_1_0 | 레거시 D3DX9 함수인 D3DXCreateTextureShader 및 D3DXFillTextureTX 에서 사용하는 텍스처 셰이더 프로필 |
vs_1_1 | 꼭짓점 셰이더 1.1 |
레거시 효과
레거시 효과의 효과 대상은 다음과 같습니다.
타겟 | 설명 |
---|---|
fx_2_0 | D3DX9의 Direct3D 9에 대한 효과(FX) |
fx_4_0 | D3DX10⁵에서의 Direct3D 10.0 효과(FX) |
fx_4_1 | D3DX10⁵ 내 Direct3D 10.1의 효과(FX) |
fx_5_0 | Direct3D 11의 효과(FX) |
노트
다음은 이전 섹션에서 참조하는 몇 가지 참고 사항입니다.
- 기능 수준 10.0 및 10.1 디바이스는 필요에 따라 DirectCompute를 지원할 수 있습니다. 지원을 확인하려면 ID3D11Device::CheckFeatureSupport에서 D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS를 사용하십시오.
- 기능 수준 9.3에는 레거시 Direct3D 9 셰이더 모델 3.0 요구 사항을 준수하는 하드웨어가 필요하지만 이 기능 수준은 vs_3_0 또는 ps_3_0 대상을 사용하지 않습니다.
- Direct3D 9 API에서 레거시 Direct3D 9 셰이더 모델만 사용합니다. 대신 Direct3D 10.x 및 11.x API와 함께 9.x 프로필을 사용합니다.
- 현재 HLSL 셰이더 D3DCompile* 함수는 레거시 1.x 픽셀 셰이더를 지원하지 않습니다. 이러한 대상을 지원하는 HLSL의 마지막 버전은 DirectX SDK의 2006년 10월 릴리스에서 D3DX9였습니다.
- D3DX 및 DirectX SDK의 모든 버전은 더 이상 사용되지 않습니다. 자세한 내용은 DirectX SDK의 위치를 참조하세요.
관련 항목