2012-08-29 125 views
0

雖然與XNA BlendState類實驗,我發現它有狀態分組:
一個用於Alpha混合,一個用於混色(如框架調用它)。混色VS Alpha混合

每個組的可變成員被稱爲*BlendFunction*DestinationBlend和* SourceBlend
(其中*由或AlphaColor取代)。

我知道如何混合兩個RGBA顏色,我認爲這是混色功能是什麼


這是什麼「阿爾法混合」是XNA顯然支持的目的是什麼?它是如何工作的?

是不是所有的4種顏色成分,包括alpha值,都由Color Blending修改?

回答

2

是的,所有四個組件都通過顏色混合進行混合。 Alpha混合可讓您設置一個自定義混合,僅爲Alpha通道覆蓋顏色混合。

所以,如果你想對所有通道使用相同的混合函數,就不需要將alpha混合設置爲任何不同。這只是在alpha通道上使用不同混合的定製選項。

+0

你有什麼時候/我該如何應用它的例子嗎? – Griffin

+0

將取決於你試圖達到什麼效果。在我的頭頂上,沒有什麼是真正想到的。請記住,這些全部基本上都是用於自己編寫着色器的便利功能,或者是舊硬件本身支持的不自己着色的東西。使用着色器可能是更現代的做事方式,只要你知道底層硬件將支持它,應該看到着色器是現在的古老新聞。 – Dervall

+0

@Dervall實際上,混合仍然是使用可編程着色器無法完成的少數幾件事之一。 –