Quantcast
Channel: Jobs
Viewing all articles
Browse latest Browse all 18427

Qt5 中使用 OpenGL 原生 API ?

$
0
0
发现 Qt5 VC2010 里无法调用 OpenGL 原生 API 例如 glBegin(…) glVertex3f(…) 等等,包括 <GL/gl.h> 就会提示 GLdouble 重定义,查了一下是在 qgl.h 中 将 GLfloat 定义为 GLdouble ,这是为 Qt 嵌入式 <GLES/gl2.h> 里弄的。Qt5 文档里的例子都是使用 QGLFunction 类的成员,然而 QGLFunction 类的成员没有 glBegin(…) glVertex3f(…) 等等。有人解释说 Qt5 使用的是 OpenGL 2 而 Windows 只支持 OpenGL 1.1 因此 Qt5 不允许使用 Windows 的 <GL/gl.h> 而是自己实现了一个嵌入式的 OpenGL(就是 <GLES/gl2.h> 和 QGLFunction 那些玩意),但是这个实现没有提供 glBegin(…) 等管线函数。。。 以前在 Qt4 写的 OpenGL 程序都是基于 glBegin(…) glVertex3f(…) 等等实现的,现在老师让迁移到 Qt5 里,总不能把以前的东西都重新写一遍吧,而且说实在把以前那些glBegin(…) glVertex3f(…) 等等实现转到 QGLFunction 那些接口上确实不易。 各位有什么好的方法能在 Qt5 VC2010 里调用 OpenGL 原生 API 分享一下?

Viewing all articles
Browse latest Browse all 18427

Trending Articles