glEnable (GL_BLEND);
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
并在片段着色器中使用它。
我已经使用Alpha混合物来提高透明度,但它似乎只能在一侧工作。
不确定问题是什么,我是编程和着色的新手。
http://imgur.com/WDK4qjc链接查看图片
答案 0 :(得分:1)
一切都很好。它被称为Transparency Sorting。
更多信息:
http://www.opengl.org/archives/resources/faq/technical/transparency.htm
Rendering transparent objects in OpenGL
opengl z-sorting transparency
答案 1 :(得分:1)
我认为你会看到2个遥远的面孔混合颜色较暗的地方。
可能没有激活Culling。
面部剔除是指在某些条件下丢弃面部绘图的能力。
要实现您想要的效果,您必须丢弃不面向相机的面部,这些面部呼叫backface culling。你这样做:
glEnableGL(GL_CULL_FACE); //(enable face culling)
glCullFace(GL_BACK); //(discard back faces)