Penpaduan tekstur

Direct3D dapat memadukan sebanyak delapan tekstur ke primitif dalam satu pass. Penggunaan beberapa penpaduan tekstur dapat sangat meningkatkan kecepatan bingkai aplikasi Direct3D. Aplikasi menggunakan beberapa perpaduan tekstur untuk menerapkan tekstur, bayangan, pencahayaan spekular, pencahayaan difus, dan efek khusus lainnya dalam satu lintasan.

Untuk menggunakan perpaduan tekstur, aplikasi Anda harus terlebih dahulu memeriksa apakah perangkat keras pengguna mendukungnya.

Tahapan tekstur dan tekstur memadukan kaskade

Direct3D mendukung perpaduan tekstur ganda satu kali melalui penggunaan tahap tekstur. Tahap tekstur mengambil dua argumen dan melakukan operasi perpaduan pada mereka, meneruskan hasil untuk pemrosesan lebih lanjut atau untuk rasterisasi. Anda dapat memvisualisasikan tahap tekstur seperti yang diperlihatkan dalam diagram berikut.

diagram tahap tekstur

Seperti yang ditunjukkan diagram sebelumnya, tahap tekstur memadukan dua argumen dengan menggunakan operator tertentu. Operasi umum termasuk modulasi sederhana atau penambahan komponen warna atau alfa argumen, tetapi lebih dari dua lusin operasi didukung. Argumen untuk tahap dapat menjadi tekstur terkait, warna atau alfa yang diulang (diulang selama bayangan Gouraud), warna dan alfa arbitrer, atau hasil dari tahap tekstur sebelumnya.

Catatan Direct3D membedakan perpaduan warna dari penpaduan alfa. Aplikasi mengatur operasi perpaduan dan argumen untuk warna dan alfa satu per satu, dan hasil pengaturan tersebut tidak bergantung satu sama lain.

 

Kombinasi argumen dan operasi yang digunakan oleh beberapa tahap perpaduan menentukan bahasa perpaduan berbasis alur sederhana. Hasil dari satu tahap mengalir ke tahap lain, dari tahap itu ke tahap berikutnya, dan sebagainya. Konsep hasil yang mengalir dari panggung ke panggung untuk akhirnya dirasterisasi pada poligon sering disebut kaskade campuran tekstur. Diagram berikut menunjukkan bagaimana tahapan tekstur individual membentuk kaskade campuran tekstur.

diagram tahapan tekstur dalam tekstur yang memadukan kaskade

Setiap tahap dalam perangkat memiliki indeks berbasis nol. Direct3D memungkinkan hingga delapan tahap perpaduan, meskipun Anda harus selalu memeriksa kemampuan perangkat untuk menentukan berapa banyak tahap yang didukung perangkat keras saat ini. Tahap perpaduan pertama adalah pada indeks 0, yang kedua berada di 1, dan seterusnya, hingga indeks 7. Sistem memadukan tahapan dalam meningkatkan urutan indeks.

Gunakan hanya jumlah tahapan yang Anda butuhkan; tahapan penpaduan yang tidak digunakan dinonaktifkan secara default. Jadi, jika aplikasi Anda hanya menggunakan dua tahap pertama, aplikasi hanya perlu mengatur operasi dan argumen untuk tahap 0 dan 1. Sistem memadukan dua tahap, dan mengabaikan tahapan yang dinonaktifkan.

Jika aplikasi Anda bervariasi jumlah tahapan yang digunakannya untuk situasi yang berbeda - seperti empat tahap untuk beberapa objek, dan hanya dua untuk yang lain - Anda tidak perlu secara eksplisit menonaktifkan semua tahap yang digunakan sebelumnya. Salah satu opsinya adalah menonaktifkan operasi warna untuk tahap pertama yang tidak digunakan, maka semua tahap dengan indeks yang lebih tinggi tidak akan diterapkan. Opsi lain adalah menonaktifkan pemetaan tekstur sama sekali dengan mengatur operasi warna untuk tahap tekstur pertama (tahap 0) ke status dinonaktifkan.

Di bagian ini

Topik Deskripsi

Tahapan penpaduan

Tahap perpaduan adalah serangkaian operasi tekstur dan argumennya yang menentukan bagaimana tekstur dipadukan.

Penpaduan tekstur multipass

Aplikasi Direct3D dapat mencapai banyak efek khusus dengan menerapkan berbagai tekstur ke primitif selama beberapa pass penyajian. Istilah umum untuk ini adalah perpaduan tekstur multipass. Penggunaan umum untuk perpaduan tekstur multipass adalah untuk meniru efek model pencahayaan dan bayangan yang kompleks dengan menerapkan beberapa warna dari beberapa tekstur yang berbeda. Salah satu aplikasi tersebut disebut pemetaan ringan.

 

Tekstur