如何在OpenGL-ES 2.0中绘制透明多边形?

Vig*_*esh 4 iphone opengl-es opengl-es-2.0

我想在openGL-es 2.0中绘制一个半透明(例如,alpha = 0.5)多边形.怎么做?.我尝试过的几件事.1.我在片段着色器中制作了gl_Fragcolor.w = 0.5.2.Disabled深度相关的事情.

我不知道如何在openGL-es 2.0中启用混合.我在某处自动实现它.是这样吗?.任何小的帮助表示赞赏.

Arn*_*saa 10

您必须启用Alpha混合.有关如何执行此操作的常见问题:https://www.khronos.org/opengl/wiki/Transparency_Sorting.

要启用所需的效果:

glEnable (GL_BLEND);
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
Run Code Online (Sandbox Code Playgroud)

请注意,启用Alpha混合会在一定程度上损害性能 - 因此只能在必须启用Alpha混合的三角形上进行.