可以在Qt 4(在桌面上)启用/使用OpenGL(特定版本),或者我必须使用glew等?
答案 0 :(得分:1)
而不是Glew你可以包括gl3.h,它可能是最简单,最无痛的方式,兼容兼容模式和核心。它也非常值得查看GLXX它是一个用C ++编写的更新的lib,因此它更面向对象并提供了查询功能等方便的功能。
你可以看一下手动绑定你需要的扩展,可能会创建你自己的Qt类。
其他替代方案是Glee(现在有点过时,仅限于OpenGL 3.0)和gl3w(为您生成头文件的脚本,但似乎只支持OpenGL 3/4芯)。
此外,如果您想要一个面向对象的OpenGL文件库OGLplus看起来不错,不会做扩展。
答案 1 :(得分:0)
Qt包含QPixelBuffers等一些扩展的包装器,否则你可以使用glew来启用扩展
答案 2 :(得分:0)
我的方法(Windows)......你需要www.opengl.org/registry/api/glext.h
我正在使用此python script从glext.h生成glex.h(p_glext.h)和glex.cpp
p_glext.h是没有原型的glext.h的副本。
//glex.h
#ifndef GLEX_H
#define GLEX_H
#include "p_glext.h"
extern void glexInit();
extern PFNGLBLENDCOLORPROC glBlendColor;
extern PFNGLBLENDEQUATIONPROC glBlendEquation;
extern PFNGLDRAWRANGEELEMENTSPROC glDrawRangeElements;
...
//glex.cpp
...
void glexInit() {
glBlendColor = (PFNGLBLENDCOLORPROC)wglGetProcAddress("glBlendColor");
glBlendEquation = (PFNGLBLENDEQUATIONPROC)wglGetProcAddress("glBlendEquation");
glDrawRangeElements = (PFNGLDRAWRANGEELEMENTSPROC)wglGetProcAddress("glDrawRangeElements");
...
}
对我来说这很简单