Jenis User-Defined
Gunakan sintaks berikut untuk mendeklarasikan jenis yang ditentukan pengguna.
typedef [const] Type Name[Index]; |
Parameter
Benda | Deskripsi |
---|---|
[const] |
Fakultatif. Kata kunci ini secara eksplisit menandai jenis sebagai konstanta. |
Jenis |
Mengidentifikasi jenis data; harus salah satu jenis data intrinsik HLSL. |
Nama |
String ASCII yang secara unik mengidentifikasi nama variabel. |
Indeks |
Ukuran array opsional. Harus berupa bilangan bulat yang tidak ditandatangani antara 1 dan 4 inklusif. |
Selain jenis data intrinsik bawaan, HLSL mendukung jenis yang ditentukan pengguna atau kustom yang mengikuti sintaks ini:
Komentar
Jenis yang ditentukan pengguna tidak peka huruf besar/kecil. Untuk kenyamanan, jenis berikut secara otomatis didefinisikan pada cakupan super-global.
typedef vector <bool, #> bool#;
typedef vector <int, #> int#;
typedef vector <uint, #> uint#;
typedef vector <half, #> half#;
typedef vector <float, #> float#;
typedef vector <double, #> double#;
typedef matrix <bool, #, #> bool#x#;
typedef matrix <int, #, #> int#x#;
typedef matrix <uint, #, #> uint#x#;
typedef matrix <half, #, #> half#x#;
typedef matrix <float, #, #> float#x#;
typedef matrix <double, #, #> double#x#;
Tanda pound (#) mewakili digit bilangan bulat antara 1 dan 4.
Untuk kompatibilitas dengan efek DirectX 8, jenis berikut secara otomatis ditentukan pada cakupan super-global:
typedef int DWORD;
typedef float FLOAT;
typedef vector <float, 4> VECTOR;
typedef matrix <float, 4, 4> MATRIX;
typedef string STRING;
typedef texture TEXTURE;
typedef pixelshader PIXELSHADER;
typedef vertexshader VERTEXSHADER;
Topik terkait
-
Jenis Data (DirectX HLSL)