2011-10-01 75 views

回答

0

Qt拥有的若干推广像QPixelBuffers否则,你可以只使用GLEW使一些推广

1

而不是GLEW可以包括gl3.h包装,它可能是最简单,最痛苦免费的方式,用兼容模式的工作原理,以及为核心。这也是值得检查的GLXX这是一个用C++编写的更新的lib,因此它更加面向对象,并提供查询功能等方便的功能。

你可以看看手动绑定你需要的扩展,可能会创建你自己的Qt类。

其他替代方案是Glee(现在有点过时,只能到OpenGL 3.0)和gl3w(为您生成头文件的脚本,但似乎只支持OpenGL 3/4内核)。

另外,如果你想为OpenGL本身的面向对象的库OGLplus看起来不错,但不会做扩展。

0

我的方式做到这一点(Windows)中...您需要www.opengl.org/registry/api/glext.h

我使用这个python script产生glex.h(p_glext.h)和glex.cpp从glext.h

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"); 
... 
} 

这是很简单的给我