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