OpenGL透明效果在Meego上显得非常糟糕

las*_*and 5 c++ opengl 3d irrlicht meego

我们一直在OpenGL的场景中创建几个半透明的3D立方体,在Windows 7和Fedora 15上显示非常好,但在Meego系统上变得非常糟糕.

这就是我在Fedora 15系统上的样子:

这就是我的Fedora 15系统的样子.

这就是Meego的样子.我们改变了线条的颜色,否则你看到的立方体会更加可悲:

这就是Meego的样子. 我们改变了线条的颜色,否则你看到的立方体会更加可怜.

只使用普通的glColor4f函数即可实现效果,只需设置alpha值即可实现透明效果.怎么会这样?

freeglut和openglut都已经在Meego系统上进行了尝试,但未能更好地显示.

我甚至尝试使用像irrlicht这样的引擎来实现这一点,但是当beginScene方法的zBuffer参数被设置为false时,屏幕上只有黑色,而且当它是真的时正常,但这不会是什么我们想要).

这不应该是显示卡或驱动程序的问题,因为我们已经看到在同一个上网本和系统上涉及透明球的3D游戏.

我们在这里找不到原因.任何人都可以帮忙解释为什么会这样吗?

luk*_*uke 6

听起来好像您可能依赖于默认设置(或行为),这可能在平台之间有所不同.

您是否明确设置了OpenGL的任何混合属性,例如glBlendFunc?如果您是,发布执行此操作的相关代码可能会有所帮助.

其中一条评论提到了对透明对象进行排序.如果您不是,那么您可能需要考虑这些以获得更准确的结果.在任何一种情况下,从平台到平台的行为应该是相同的,所以我猜想这不是你的问题.

编辑:

另一个想法.你在设置glCullFace吗?可能是因为您的顶点缠绕,您的透明面被剔除.