0
我有一個PNG圖像作爲紋理,其中一部分是透明的,因爲α爲0.現在看起來不再使用「glAlphaFunc(GL_GREATER,0.99f)」和「glEnable(GL_ALPHA_TEST)」。我正在考慮使用混合。但如何實現呢?如何實現與使用glAlphaFunc(GL_GREATER,0.99f)相同的效果?
此外,任何人都可以向我解釋如何功能
glBlendFunc(GL_SRC_COLOR, GL_ZERO);
的作品?目標比例因子&以及它們的使用方式是什麼?
默認的混合方程是可加的,所以混合函數可以運行到'Src.rgb * Src.rgb + Dst.rgb * 0'(其中'Src'是輸入的顏色,'Dst'是已經存在的顏色幀緩衝器)。我不確定你在這裏想要完成什麼?混合功能從哪裏來? – 2015-03-31 21:25:19
@Andon M. Coleman這只是一個例子(可能沒有任何意義),因爲我不明白這兩個參數是如何工作的。你說的話對我有意義。因此,如果我將其更改爲glBlendFunc(GL_SRC_ALPHA,GL_ONE),結果將如下所示:Src.a * Src.rgb + Dst.rgb * 1? – Oscar 2015-04-01 02:17:12
是的,這正是如何工作。 – 2015-04-01 18:38:19