Konstanta D3D10_SHADER

Opsi kompilasi HLSL.

#define Deskripsi
D3D10_SHADER_AVOID_FLOW_CONTROL Beri tahu pengkompilasi untuk tidak mengizinkan kontrol alur (jika memungkinkan).
D3D10_SHADER_DEBUG Sisipkan informasi file/baris/tipe/simbol debug.
D3D10_SHADER_ENABLE_STRICTNESS Secara default, pengkompilasi HLSL menonaktifkan keketatan pada sintaks yang tidak digunakan lagi. Menentukan bendera ini memungkinkan keketatan yang mungkin tidak memungkinkan sintaks warisan.
D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY Ini memungkinkan shader yang lebih lama untuk dikompilasi ke target 4_0.
D3D10_SHADER_FORCE_VS_SOFTWARE_NO_OPT Kompilasi shader vertex untuk profil shader tertinggi berikutnya. Opsi ini mengaktifkan penelusuran kesalahan (dan pengoptimalan nonaktif).
D3D10_SHADER_FORCE_PS_SOFTWARE_NO_OPT Kompilasi shader piksel untuk profil shader tertinggi berikutnya. Opsi ini mengaktifkan penelusuran kesalahan (dan pengoptimalan nonaktif).
D3D10_SHADER_IEEE_STRICTNESS Memungkinkan ketegasan IEEE.
D3D10_SHADER_NO_PRESHADER Menonaktifkan Preshader. Menggunakan bendera ini akan menyebabkan pengkompilasi tidak mengeluarkan ekspresi statis untuk evaluasi.
D3D10_SHADER_OPTIMIZATION_LEVEL0 Tingkat pengoptimalan terendah. Dapat menghasilkan kode yang lebih lambat tetapi akan melakukannya lebih cepat. Ini mungkin berguna dalam siklus pengembangan shader yang sangat berulang.
D3D10_SHADER_OPTIMIZATION_LEVEL1 Tingkat pengoptimalan terendah kedua.
D3D10_SHADER_OPTIMIZATION_LEVEL2 Tingkat pengoptimalan tertinggi kedua.
D3D10_SHADER_OPTIMIZATION_LEVEL3 Tingkat pengoptimalan tertinggi. Akan menghasilkan kode terbaik tetapi mungkin membutuhkan waktu jauh lebih lama untuk melakukannya. Ini akan berguna untuk build akhir aplikasi di mana performa adalah faktor yang paling penting.
D3D10_SHADER_PACK_MATRIX_ROW_MAJOR Kecuali ditentukan secara eksplisit, matriks akan dikemas dalam urutan besar baris pada input dan output dari shader.
D3D10_SHADER_PACK_MATRIX_COLUMN_MAJOR Kecuali ditentukan secara eksplisit, matriks akan dikemas dalam urutan kolom-utama pada input dan output dari shader. Ini umumnya lebih efisien, karena memungkinkan perkalian vektor-matriks dilakukan menggunakan serangkaian produk titik.
D3D10_SHADER_PARTIAL_PRECISION Paksa semua komputasi untuk dilakukan dengan presisi parsial; ini mungkin berjalan lebih cepat pada beberapa perangkat keras.
D3D10_SHADER_PREFER_FLOW_CONTROL Beri tahu pengkompilasi untuk menggunakan kontrol alur (jika memungkinkan).
D3D10_SHADER_SKIP_OPTIMIZATION Lewati pengoptimalan selama pembuatan kode; umumnya direkomendasikan untuk debug saja.
D3D10_SHADER_SKIP_VALIDATION Jangan memvalidasi kode yang dihasilkan terhadap kemampuan dan batasan yang diketahui. Hanya gunakan ini dengan shader yang telah berhasil dikompilasi di masa lalu. Shader selalu divalidasi oleh DirectX sebelum diatur ke perangkat.
D3D10_SHADER_WARNINGS_ARE_ERRORS Beri tahu pengkompilasi HLSL untuk memperlakukan semua peringatan sebagai kesalahan saat mengkompilasi kode shader. Untuk kode shader baru, Anda harus menggunakan opsi ini sehingga Anda dapat menyelesaikan semua peringatan dan memastikan cacat kode paling sedikit yang sulit ditemukan.

 

Konstanta ini didefinisikan sebagai makro di d3d10shader.h.

Konstanta Shader