Pemfilteran tekstur
Pemfilteran tekstur menghasilkan warna untuk setiap piksel dalam gambar 2D primitif yang dirender saat primitif dirender dengan memetakan primitif 3D ke layar 2D.
Saat Direct3D merender primitif, Direct3D memetakan primitif 3D ke layar 2D. Jika primitif memiliki tekstur, Direct3D harus menggunakan tekstur tersebut untuk menghasilkan warna untuk setiap piksel dalam gambar 2D primitif yang dirender. Untuk setiap piksel dalam gambar di layar primitif, piksel harus mendapatkan nilai warna dari tekstur. Proses ini disebut pemfilteran tekstur.
Saat operasi filter tekstur dilakukan, tekstur yang digunakan biasanya juga diperbesar atau dikurangi. Dengan kata lain, itu sedang dipetakan ke dalam gambar primitif yang lebih besar atau lebih kecil dari dirinya sendiri. Pembesaran tekstur dapat mengakibatkan banyak piksel dipetakan ke satu texel. Hasilnya bisa menjadi penampilan yang mudah diingat. Minifikasi tekstur sering berarti bahwa satu piksel dipetakan ke banyak texel. Gambar yang dihasilkan dapat buram atau alias. Untuk mengatasi masalah ini, beberapa perpaduan warna texel harus dilakukan untuk sampai pada warna untuk piksel.
Direct3D menyederhanakan proses pemfilteran tekstur yang kompleks. Ini memberi Anda tiga jenis pemfilteran tekstur - pemfilteran linier, pemfilteran anisotropik, dan pemfilteran mipmap. Jika Anda tidak memilih pemfilteran tekstur, Direct3D menggunakan teknik yang disebut pengambilan sampel titik terdekat.
Setiap jenis pemfilteran tekstur memiliki kelebihan dan kekurangan. Misalnya, pemfilteran tekstur linier dapat menghasilkan tepi berjatuhan atau penampilan gugus dalam gambar akhir. Namun, ini adalah metode komputasi pemfilteran tekstur overhead rendah. Pemfilteran dengan mipmap biasanya menghasilkan hasil terbaik, terutama jika dikombinasikan dengan pemfilteran anisotropic. Namun, dibutuhkan memori terbanyak dari teknik yang didukung Direct3D.
Jenis pemfilteran tekstur
Direct3D mendukung pendekatan pemfilteran tekstur berikut.
Di bagian ini
Topik | Deskripsi |
---|---|
Aplikasi tidak diperlukan untuk menggunakan pemfilteran tekstur. Direct3D dapat diatur sehingga menghitung alamat texel, yang sering tidak dievaluasi ke bilangan bulat, dan menyalin warna texel dengan alamat bilangan bulat terdekat. Proses ini disebut pengambilan sampel titik terdekat. |
|
Pemfilteran bilinear menghitung rata-rata tertimbang dari 4 texel yang paling dekat dengan titik pengambilan sampel. Pendekatan pemfilteran ini lebih akurat dan umum daripada pemfilteran titik terdekat. Pendekatan ini efisien karena diimplementasikan dalam perangkat keras grafis modern. |
|
Anisotropy adalah distorsi yang terlihat di texel objek 3D yang permukaannya berorientasi pada sudut sehubungan dengan bidang layar. Ketika piksel dari primitif anisotropik dipetakan ke texel, bentuknya terdistorsi. |
|
Mipmap adalah urutan tekstur, yang masing-masing adalah representasi resolusi yang semakin rendah dari gambar yang sama. Tinggi dan lebar setiap gambar, atau tingkat, dalam mipmap adalah kekuatan dua lebih kecil dari tingkat sebelumnya. |
Topik terkait