我有以下代码:
glEnable(GL_POLYGON_OFFSET_LINE);
glPolygonOffset(1,1); // or 40,40 etc... doesnt help at all
但这些线仍然是z-fighting,这是常见的bug还是什么......?我的线条厚度为1.0f,我在场景中绘制了最后一行。
此外,我已禁用GL_ALPHA_TEST和GL_LINE_SMOOTH并启用了GL_BLEND和GL_COLOR_LOGIC_OP
编辑:我已经尝试过GL_POLYGON_OFFSET_FILL,但它没有帮助。
答案 0 :(得分:12)
GL_POLYGON_OFFSET_LINE
仅适用于glPolygonMode(GL_FRONT_AND_BACK, GL_LINE)
的多边形渲染。如果您使用GL_LINES
绘制基元,则它不起作用。在这种情况下,您必须手动偏移顶点。
答案 1 :(得分:4)
尝试启用GL_POLYGON_OFFSET_FILL。 (我认为这些线条与您之前渲染的多边形相比是深度对抗的吗?)