Mas*_*tic 0 c++ opengl glut freeglut glfw
每当我调用一个函数来交换缓冲区时,我都会glDebugMessageCallback说出很多错误:
glVertex2f已从OpenGL Core上下文(GL_INVALID_OPERATION)中删除
我已经尝试过同时使用GLFW和freeglut,但都无法正常工作。
我glVertex2f当然没用过。我什至甚至删除了所有渲染代码,以查看是否可以找到导致该问题的原因,但是错误仍然存在,就在glutSwapBuffers/ 之后glfwSwapBuffers。
使用单缓冲也不会导致任何错误。
我已经将上下文初始化为4.3,核心配置文件,并标记了前向兼容性。
如评论中所述,这里的问题实际上是第三方软件,而不是您自己编写的任何代码。
当诸如Steam overlay或FRAPS之类的软件需要在OpenGL之上绘制某些东西时,通常会SwapBuffers在运行时通过将一些代码钩入/注入到您的应用程序实现中来解决此问题。
您正在使用的一款软件(RivaTuner)仍使用即时模式来绘制其覆盖图,并且该软件是每次缓冲区交换时无法解释的不赞成使用的API调用的来源。