我有一個非常簡單的2D廣場,這是我渲染遊戲精靈到從紋理。這一切都很好,除了紋理中應該透明的區域呈現爲黑色。如何渲染這些透明區域以顯示廣場後面的對象(在本例中爲背景)?紋理與透明區域呈現區域爲黑色 - 我該如何讓他們透明?
櫃面有關,這裏的簡單片段着色器:
uniform sampler2D uTexture;
varying vec2 vImagePosition;
void main(){
gl_FragColor = texture2D(uTexture, vImagePosition);
}
和頂點着色器:
attribute vec4 aPosition;
attribute vec2 aImagePosition;
uniform mat4 uMVPMatrix;
varying vec2 vImagePosition;
void main(){
gl_Position = uMVPMatrix*aPosition;
vImagePosition = aImagePosition;
}
我可能已經在誤導我的語言。我的意思是說,原始圖像在精靈的背景透明度(不是黑色),但OGL被渲染它爲黑色。 我不能讓你的shader例子鏈接。它不斷出錯,但我找不到錯誤。 – xtraorange
我很高興你發現了這個問題。這就是我所說的「啓用OpenGL混合狀態,以便將來自片段着色器的Alpha通道考慮在內」。乾杯。 – Trax
啊,謝謝你的幫助,我很感激。 – xtraorange