Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在编写一些 Java OpenGL 代码(尽管 C++ openGL 中的原理相同)。我有一种情况,我想在其他项目之上渲染某些项目。我可以通过禁用这些项目的深度测试或将其设置为 GL_ALWAYS 来做到这一点,并且效果很好。问题是顶部的那些项目的颜色似乎被它下面的项目变暗了。我不确定这是照明问题还是混合问题,但我试图显示该项目的颜色而不受其周围颜色的影响,无论该项目的 z 位置如何(因为深度测试设置为 ALWAYS )。我应该为此使用照明设置或混合设置吗?
谢谢,杰夫
我认为在这种情况下,我会单独保留深度设置,但会根据绘制顺序调整对象的 Z 值(对于您希望根据顺序而不是正常深度绘制的那些项目)。
glBegin(GL_WHATEVER); for (int i=0; i<num_objects; i++) glVertex(object[i].x, object[i].y, i/-100.0f); glEnd(GL_WHATEVER);