0
我想呈現具有淡出到外部的六邊形的粒子。我已經爲每個粒子使用了TRIANGLE_FAN。但是,透明度看起來不太好。在OpenGL中將粒子渲染爲具有透明度的GL_TRIANGLE_FANs
glBegin(GL_TRIANGLE_FAN);
glColor4f(c.x, c.y, c.z, particle.temperature/100.0);
glVertex3f(0, 0, 0);
glColor4f(0, 0, 0, 0);
glVertex3f(0.866025404 * H/2, 0.5 * H/2, 0);
glVertex3f(0, 1 * H/2, 0);
// other vertices omitted
glEnd();
我得到被閃爍的輸出和其中黑色透明部件被繪製在不透明物體在一些幀。我該如何改變渲染例程以避免這些錯誤?
你的混合設置是怎樣的? – Kos 2010-12-17 20:24:31
glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA); – Etan 2010-12-17 21:09:21
啊,我發現了一個同胞的Minecraft玩家(例如屏幕底部的Minecraft圖標):-) – Jonathan 2014-05-23 14:54:25