Bias Kedalaman (Direct3D 9)

Poligon yang merupakan koplanar di ruang 3D Anda dapat dibuat tampak seolah-olah mereka tidak koplanar dengan menambahkan z-bias ke masing-masing. Ini adalah teknik yang umum digunakan untuk memastikan bahwa bayangan dalam adegan ditampilkan dengan benar. Misalnya, bayangan di dinding kemungkinan akan memiliki nilai kedalaman yang sama seperti dinding. Jika Anda merender dinding terlebih dahulu dan kemudian bayangan, bayangan mungkin tidak terlihat, atau artefak kedalaman mungkin terlihat. Anda dapat membalikkan urutan di mana Anda merender objek koplanar dengan harapan membalikkan efek, tetapi artefak kedalaman masih mungkin terjadi.

Aplikasi dapat membantu memastikan bahwa poligon koplanar dirender dengan benar dengan menambahkan bias ke nilai z yang digunakan sistem saat merender set poligon koplanar. Untuk menambahkan z-bias ke sekumpulan poligon, panggil metode IDirect3DDevice9::SetRenderState tepat sebelum merendernya, atur parameter Status ke D3DRS_DEPTHBIAS, dan parameter Nilai ke nilai float yang sesuai (misalnya, nilai yang sesuai mungkin dari -1.0 hingga 1.0); untuk meneruskan nilai ini ke SetRenderState, Anda juga harus melemparkan nilai ke DWORD. Nilai z-bias yang lebih tinggi meningkatkan kemungkinan poligon yang Anda render akan terlihat saat ditampilkan dengan poligon koplanar lainnya.

Offset = m * D3DRS_SLOPESCALEDEPTHBIAS + D3DRS_DEPTHBIAS

di mana m adalah kelopak kedalaman maksimum segitiga yang dirender.

m = max(abs(delta z / delta x), abs(delta z / delta y)) 

Unit untuk status render D3DRS_DEPTHBIAS dan D3DRS_SLOPESCALEDEPTHBIAS bergantung pada apakah z-buffering atau w-buffering diaktifkan. Aplikasi harus memberikan nilai yang sesuai.

Bias tidak diterapkan pada garis dan titik primitif apa pun. Namun, bias ini perlu diterapkan pada segitiga yang digambar dalam mode wireframe.

// RenderStates
D3DRS_SLOPESCALEDEPTHBIAS, // Defaults to zero
D3DRS_DEPTHBIAS,           // Defaults to zero
// Caps
D3DPRASTERCAPS_DEPTHBIAS           
D3DPRASTERCAPS_SLOPESCALEDEPTHBIAS 

Alur Piksel