Menentukan Target Pengkompilasi
Anda perlu menentukan target shader — kumpulan fitur shader — untuk dikompilasi saat Anda memanggil fungsi D3DCompile, D3DCompile2, atau D3DCompileFromFile . Di sini kami mencantumkan target untuk berbagai profil yang fungsi D3DCompile* dan dukungan pengkompilasi HLSL.
- Tingkat fitur Direct3D 11.0 dan 11.1
- Tingkat fitur Direct3D 10.1
- Tingkat fitur Direct3D 10.0
- Tingkat fitur Direct3D 9.1, 9.2, dan 9.3
- Warisan Direct3D 9 Shader Model 3.0
- Warisan Direct3D 9 Shader Model 2.0
- Warisan Direct3D 9 Shader Model 1.x
- Efek Warisan
- Catatan
- Topik terkait
Tingkat fitur Direct3D 11.0 dan 11.1
Berikut adalah target shader yang didukung tingkat fitur Direct3D 11.0 dan 11.1.
Target | Deskripsi |
---|---|
cs_5_0 | DirectCompute 5.0 (shader komputasi) |
ds_5_0 | Shader domain |
gs_5_0 | Shader geometri |
hs_5_0 | Shader lambung |
ps_5_0 | Bayangan piksel |
vs_5_0 | Bayangan puncak |
Tingkat fitur Direct3D 10.1
Berikut adalah target shader yang didukung tingkat fitur Direct3D 10.1.
Target | Deskripsi |
---|---|
cs_4_1 | DirectCompute 4.1 (shader komputasi)¹ |
gs_4_1 | Shader geometri |
ps_4_1 | Bayangan piksel |
vs_4_1 | Bayangan puncak |
Tingkat fitur Direct3D 10.0
Berikut adalah target shader yang didukung tingkat fitur Direct3D 10.0.
Target | Deskripsi |
---|---|
cs_4_0 | DirectCompute 4.0 (shader komputasi)¹ |
gs_4_0 | Shader geometri |
ps_4_0 | Bayangan piksel |
vs_4_0 | Bayangan puncak |
Tingkat fitur Direct3D 9.1, 9.2, dan 9.3
Berikut adalah target shader yang didukung tingkat fitur Direct3D 9.1, 9.2, dan 9.3.
Catatan
Saat Anda menggunakan profil shader *_4_0_level_9_x HLSL, Anda secara implisit menggunakan profil Shader Model 2.x untuk mendukung perangkat keras berkemampuan Direct3D 9. Profil Shader Model 2.x mendukung perilaku kontrol alur yang lebih terbatas daripada profil Model Shader 4.x dan yang lebih baru.
Target | Deskripsi |
---|---|
ps_4_0_level_9_1 |
Piksel shader untuk 9.1 dan 9.2 (batas yang sama dengan ps_2_0)
|
ps_4_0_level_9_3 |
Pixel shader untuk 9.3 (batas serupa dengan ps_2_x² dengan fitur shader tambahan)
|
vs_4_0_level_9_1 |
Shader vertex untuk 9.1 dan 9.2 (mirip dengan vs_2_0)
|
vs_4_0_level_9_3 |
Vertex shader untuk 9.3 (mirip dengan vs_2_a² dengan fitur shader tambahan dan instancing)
|
Warisan Direct3D 9 Shader Model 3.0
Berikut adalah target shader untuk model shader Direct3D 9 warisan 3.0³.
Target | Deskripsi |
---|---|
ps_3_0 | Piksel shader 3.0 |
ps_3_sw | Pixel shader 3.0 (perangkat lunak) |
vs_3_0 | Bayangan puncak 3.0 |
vs_3_sw | Vertex shader 3.0 (perangkat lunak) |
Warisan Direct3D 9 Shader Model 2.0
Berikut adalah target shader untuk model shader Direct3D 9 warisan 2.0³.
Target | Deskripsi |
---|---|
ps_2_0 | Pixel shader 2.0 |
ps_2_a | Piksel shader 2a |
ps_2_b | Piksel shader 2b |
ps_2_sw | Perangkat lunak Pixel shader 2.0 |
vs_2_0 | Shader puncak 2.0 |
vs_2_a | Vertex shader 2a |
vs_2_sw | Perangkat lunak Vertex shader 2.0 |
Warisan Direct3D 9 Shader Model 1.x
Berikut adalah target shader untuk model shader Direct3D 9 warisan 1.x⁴.
Target | Deskripsi |
---|---|
tx_1_0 | Profil shader tekstur yang digunakan D3DX9⁵ fungsi lama D3DXCreateTextureShader dan D3DXFillTextureTX |
vs_1_1 | Shader puncak 1.1 |
Efek Warisan
Berikut adalah target efek untuk efek warisan.
Target | Deskripsi |
---|---|
fx_2_0 | Efek (FX) untuk Direct3D 9 di D3DX9⁵ |
fx_4_0 | Efek (FX) untuk Direct3D 10.0 di D3DX10⁵ |
fx_4_1 | Efek (FX) untuk Direct3D 10.1 di D3DX10⁵ |
fx_5_0 | Efek (FX) untuk Direct3D 11⁵ |
Catatan
Berikut adalah beberapa catatan yang dirujuk oleh bagian sebelumnya:
- perangkat tingkat fitur 10.0 dan 10.1 dapat secara opsional mendukung DirectCompute. Untuk memverifikasi dukungan, gunakan ID3D11Device::CheckFeatureSupport dengan D3D11_FEATURE_D3D10_X_HARDWARE_OPTIONS.
- tingkat fitur 9.3 secara efektif memerlukan perangkat keras yang mematuhi persyaratan untuk model shader Direct3D 9 warisan 3.0, tetapi tingkat fitur ini tidak menggunakan target vs_3_0 atau ps_3_0.
- Hanya gunakan model shader Direct3D 9 warisan dengan API Direct3D 9. Sebagai gantinya, gunakan profil 9.x dengan Direct3D 10.x dan 11.x API.
- Fungsi HLSL shader D3DCompile* saat ini tidak mendukung shader piksel 1.x warisan. Versi terakhir HLSL untuk mendukung target ini adalah D3DX9 dalam rilis DirectX SDK Oktober 2006.
- Semua versi D3DX dan DirectX SDK tidak digunakan lagi. Untuk informasi selengkapnya, lihat Di mana DirectX SDK?.
Topik terkait