【发布时间】:2010-06-24 20:42:24
【问题描述】:
我正在编写一些 Java OpenGL 代码(尽管 C++ openGL 中的原理相同)。我有一种情况,我想在其他项目之上渲染某些项目。我可以通过禁用这些项目的深度测试或将其设置为 GL_ALWAYS 来做到这一点,并且效果很好。问题是顶部这些项目的颜色似乎被它下面的项目变暗了。我不确定这是照明问题还是混合问题,但我试图显示该项目的颜色而不受其周围颜色的影响,无论该项目的 z 位置如何(因为深度测试设置为 ALWAYS )。我应该为此使用照明设置或混合设置吗?
谢谢, 杰夫
【问题讨论】:
-
两个问题:你的意思是你想让最后绘制的东西总是以特定的像素显示,不管之前绘制的是什么,也不管深度如何;其次,您确定不在任何地方使用透明度吗?
-
@DJClayworth,我希望绘制的最后一个对象是在特定位置显示的对象,正确,无需深度测试即可正常工作。而且,是的,我没有使用透明度。当我旋转场景时,它看起来是正确的。真的,我认为需要进行两次渲染,先渲染场景的基础,然后渲染一组没有深度测试的对象,然后在基础场景上渲染整个结果。
标签: java opengl colors blending