【发布时间】:2015-09-14 12:10:51
【问题描述】:
是否可以仅使用 glVertexAttrib3f 调用在 OpenGL 4+ 中进行绘制?以下在旧版 OpenGL 模式下工作,但当我切换到 OpenGL 4 时,什么都没有渲染。
glBegin(GL_TRIANGLES);
glVertexAttrib3f(1, 0, 0, -1);
glVertexAttrib3f(0, -0.5, -0.5, -0.5 );
glVertexAttrib3f(0, -0.5, 0.5, -0.5 );
glVertexAttrib3f(0, 0.5, 0.5, -0.5 );
glVertexAttrib3f(1, 0, 0, 1);
glVertexAttrib3f(0, 0.5, -0.5, 0.5 );
glVertexAttrib3f(0, 0.5, 0.5, 0.5 );
glVertexAttrib3f(0, -0.5, 0.5, 0.5 );
....
glEnd();
我想我应该摆脱那些 glBegin() glEnd() 函数,也许调用 glDrawArrays() 但没有让它工作。
【问题讨论】:
-
glBegin和glEnd在 OpenGL 4 中不存在。 -
我相信这在兼容性配置文件中应该仍然有效。显然不是核心配置文件上下文。