首先,这个代码的目的是什么?
glHint(GL_LINE_SMOOTH_HINT, GL_NICEST);
我可以放GL_DONT_CARE
,但它不会画出我的画线,除非我使用glDisable(GL_LINE_SMOOTH)
所以即时通讯询问是否有一些内置的机制可以让它画出线条,即使光线没有得到支持(所以它会画出它们而不会消失...)
或者我必须为它做自己的功能并检查是否支持平滑线等...每次我想绘制流畅的线条时,我需要调用此函数来检查它是否受支持?哎呀。
编辑:我的另一张卡上的线条很平滑,在我的另一张卡上,它们甚至都没有显示,除非我禁用平滑的线条。所以这就是问题,而不是glEnable(GL_BLEND)
答案 0 :(得分:5)
glHint
顾名思义是对驱动程序的提示。它没有必要实现任何目标。 glHint
的实际功能取决于图形驱动程序。
此外,要启用LINE_SMOOTH
,您需要启用混合。你启用了GL_BLEND
吗?当你在它的时候,也选择你的glBlend功能!
示例:
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glEnable(GL_BLEND);