Bagikan melalui


Render Alpha Target (Direct3D 9)

Blender buffer bingkai sekarang dapat memadukan saluran alfa independen dari perpaduan saluran warna pada target render. Kontrol ini diaktifkan dengan status render baru, D3DRS_SEPARATEALPHABLENDENABLE.

Ketika D3DRS_SEPARATEALPHABLENDENABLE diatur ke FALSE (yang merupakan kondisi default), faktor penpaduan target render dan operasi yang diterapkan ke alfa sama dengan yang didefinisikan untuk memadukan saluran warna. Driver perlu mengatur batas D3DPMISCCAPS_SEPARATEALPHABLEND untuk menunjukkan bahwa driver dapat mendukung perpaduan alfa target render. Pastikan untuk mengaktifkan D3DRS_ALPHABLEND untuk memberi tahu alur bahwa penpaduan alfa diperlukan.

Untuk mengontrol faktor-faktor di saluran alfa blender target render, dua status render baru didefinisikan sebagai berikut:

D3DRS_SRCBLENDALPHA 
D3DRS_DESTBLENDALPHA 

Seperti D3DRS_SRCBLEND dan D3DRS_DESTBLEND, ini dapat diatur ke salah satu nilai dalam enumerasi D3DBLEND . Pengaturan campuran sumber dan tujuan dapat digabungkan dalam beberapa cara, tergantung pada pengaturan di anggota SrcBlendCaps dan DestBlendCaps D3DCAPS9.

Penpaduan alfa dilakukan sebagai berikut:

renderTargetAlpha = (alfadalam * srcBlendOp) BlendOp (alphart * destBlendOp)

Di mana:

  • alphain adalah nilai alfa input.
  • srcBlendOp adalah salah satu faktor campuran dalam D3DBLEND.
  • BlendOp adalah salah satu faktor campuran dalam D3DBLENDOP.
  • alphart adalah nilai alfa target render.
  • destBlendOp adalah salah satu faktor campuran dalam D3DBLEND.
  • renderTargetAlpha adalah nilai alfa campuran akhir.

Penpaduan Alfa