可以通过以下方法获取自己系统中的OpenGL版本:
const char* version = (const char*)glGetString(GL_VERSION);
printf("OpenGL 版本:%s/n", version);
glGetString(GL_VENDOR); 返回OpenGL的提供厂商。
glGetString(GL_RENDERER); 返回执行OpenGL渲染的设备,通常就是显卡的名字。
glGetString(GL_EXTENSIONS); 返回所支持的所有扩展,每两个扩展之间用空格隔开。
除了可以用OpenGL标准函数,还可以用OpenGL扩展包
厂商在发行OpenGL时,除了遵照OpenGL标准,提供标准所规定的各种功能外,往往还提供其它一些额外的功能,这就是扩展。
扩展可以提供各种很新很潮的效果哟~
每个OpenGL扩展,都必须向OpenGL的网站注册,确认后才能成为扩展。注册后的扩展有编号和名字。编号仅仅是一个序号,名字则与扩展所提供的功能相关。
名字用下划线分为三部分。举例来说,一个扩展的名字可能为:GL_NV_half_float,其意义如下:
第一部分为扩展的目标。比如GL表示这是一个OpenGL扩展。如果是WGL则表示这是一个针对Windows的OpenGL扩展,
如果是GLX则表示这是一个针对linux的X Window系统的OpenGL扩展。

本文介绍了如何获取OpenGL版本及扩展信息,包括glGetString函数的使用,详细解析了OpenGL扩展的命名规则和分类,如NV、EXT和ARB扩展。讨论了扩展在功能上的优势,如节省内存和数据传输量,并提供了使用扩展的示例,推荐了GLEE库和OpenGL Extension Viewer工具来辅助开发。
最低0.47元/天 解锁文章
1883

被折叠的 条评论
为什么被折叠?



