Qt QOpenGLFunctions是否与QGLWidget和QGLFramebufferObject兼容?
我的OpenGL游戏目前使用Qt5、GLEW和“旧”QGLWidget+QGLFramebufferObjects进行渲染。我想摆脱GLEW,所以我让我的类从QOpenGLFunctions继承并在它们的构造函数中初始化它。实际问题是,尽管初始化成功,但我的游戏现在在渲染时仍会出错Qt QOpenGLFunctions是否与QGLWidget和QGLFramebufferObject兼容?,qt,opengl,Qt,Opengl,我的OpenGL游戏目前使用Qt5、GLEW和“旧”QGLWidget+QGLFramebufferObjects进行渲染。我想摆脱GLEW,所以我让我的类从QOpenGLFunctions继承并在它们的构造函数中初始化它。实际问题是,尽管初始化成功,但我的游戏现在在渲染时仍会出错 那么,是否可以将QOpenGLFunctions与这个“旧”Qt4样式的图形堆栈一起使用,或者我应该转移到现代的Qt5堆栈上?回答我自己:是的,它兼容并且工作良好 崩溃的根本原因是我仍然意外地将GLEW包含在我的一个
那么,是否可以将QOpenGLFunctions与这个“旧”Qt4样式的图形堆栈一起使用,或者我应该转移到现代的Qt5堆栈上?回答我自己:是的,它兼容并且工作良好
崩溃的根本原因是我仍然意外地将GLEW包含在我的一个文件中,并且发生了一些不好的事情。旧的Qt4样式的图形堆栈不会对此发出警告,但新的会发出警告。不确定“旧”堆栈是否存在问题,但需要尝试一些事情:确保已对函数实例调用了
initializePenglFunctions()
。确保在OpenGL上下文为当前时调用此函数。还值得检查上下文格式是否正确(即,它是否具有正确的OpenGL版本号)。