我想同时使用线框和填充多边形,我使用黄色和黑色,这样我可以区分彼此
gl1.glColor3d(0.0, 0.0, 0.0);
gl1.glBegin(GL_LINE_STRIP);
gl1.glColor3d(1.0, 1.0, 0.0);
gl1.glBegin(GL_POLYGON);
但是我收到以下错误:Info:GLDrawableHelper.reshape:pre-exisiting GL error 0x502
嗯,我想这是因为我只能在某个函数中使用一个glBegin(...),还有另外一种方法吗?感谢。
答案 0 :(得分:1)
你做不到。您只能随时绘制多边形类型。如果想要填充多边形和使用相同顶点的线环,则仍需要绘制两次。
嗯,我想这是因为我只能在一些中使用一个glBegin(...) 功能
您无法嵌套glBegin()
来电。在glBegin/glEnd
块中只允许一个非常小的gl函数子集:基本上,你可以设置顶点的当前属性,并在那里生成顶点。但是你可以在一个函数中拥有尽可能多的glBegin/glEnd
块。
我只需要注意在现代OpenGL版本中不推荐使用glBegin/glEnd
,你现在不应该在没有充分理由的情况下使用这些东西。