D3D中的Alpha顏色混合(3) 摘要:
另一種實現實現背景透明顯示的簡便方法是直接應用渲染管道流水線的Alpha測試功能進行,D3D中的Alpha顏色混合(2)介紹的接口方法實際就是對
Alpha測試的一個包裝。Alpha測試是對需要寫入繪圖表面的像素顏色Alpha值進行測試,判斷該Alpha值是否滿足預先設定的條件,如果滿足條件,則將該像素顏色值寫入繪圖表面,否則不寫入。
D3D中的Alpha顏色混合(2) 摘要:
本篇是D3D中的Alpha顏色混合(1)的后續篇,主要講利用ID3DXSprite來實現圖片間的顏色透明效果。
在一幅圖象上透明的顯示另一幅圖象,是Alpha顏色混合的一個典型應用,如下圖所示,瞄準鏡圖象背景透明地顯示在老虎背景圖象上。
實現瞄準鏡的背景透明顯示,首先需要準備如下兩張圖:
Alpha通道圖(屏蔽圖)的黑色像素對應的源圖像素不被顯示出來,Alpha通道圖(屏蔽圖)的白色像素對應的源圖像素會顯示出來。
D3D中的Alpha顏色混合(1) 摘要:
渲染管道流水線通常需要將來自頂點的顏色,紋理像素的顏色,光照顏色以及物體表面材質反射光顏色進行混合,生成計算機屏幕的像素顏色。將多種顏色混合在一起,必須考慮各種顏色的成分比例,這個比例由Alpha因子決定。對于游戲開發來說,利用Alpha顏色混合可產生背景透明的渲染效果。
一般的,屏幕像素的當前顏色值SrcColor可與目標像素顏色值DestColor進行如下運算,然后將獲得的顏色值Color作為該像素的新顏色,以實現像素的目標顏色與源顏色的混合。