2011-11-10 171 views
1

我試圖將我的gui komponents再次混合背景,但atm看起來很奇怪,即使我在着色器中將alpha設置爲1.0時,混合效果也很奇怪。OpenGL ES 2.0:Alpha混合問題

啓用用下面的代碼的混合:

GL.Enable(All.Blend); 
GL.BlendFunc(All.SrcAlpha, All.One); 

Alpha設置到1.0的按鈕是這樣(注意:其中一個按鈕丟失): Buttons

像素着色器是簡單:

varying lowp vec2 textureCoordinates; 
uniform sampler2D texture; 

void main() 
{ 
    gl_FragColor = vec4(texture2D(texture, textureCoordinates).bgr, 1.0); // r and b switched, because the colors are switched???? 
} 

上的一顆釦子: enter image description here

+0

爲什麼你在着色器中切換顏色? –

+0

你能顯示按鈕的原始圖像嗎? – NickLH

+0

如果您可以提供一個獨立的測試用例,或者將其託管在某處(例如github)或一個附加到錯誤報告的zip文件(例如http://bugzilla.xamarin.com),那麼幫助您會容易得多。現在很難說出問題的出現在哪裏 - 而且不容易複製類似的東西。 – poupou

回答

0

使用OneMinusSrcAlpha代替One解決了這個問題。