您的位置:首页 > 运维架构

如何察看显卡OpenGL的版本

2015-08-20 14:54 225 查看

如何察看显卡OpenGL的版本

题目比较拗口,解释一下:

OpenGL本身是绘图的一个工具,本身有很多版本,且向下兼容,但是OpenGL还需要操作显卡上的很多功能,所以需要显卡的驱动支持OpenGL的版本,博主在用老爷机调试OpenGL的时候就遇到了这种问题,一开始摸不着头脑,后来经过思考发现原来是老爷机显卡太过老旧,不支持新OpenGL的一些函数,下面就给出如何使用OpenGL直接获得显卡版本参数的函数:

#include <stdio.h>
#include <GL/glut.h>

int main(int argc, char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB|GLUT_DEPTH);
glutCreateWindow("OpenGL Version");
const GLubyte * name = glGetString(GL_VENDOR);
const GLubyte * biaoshifu = glGetString(GL_RENDERER);
const GLubyte * OpenGLVersion = glGetString(GL_VERSION);
const GLubyte * gluVersion = gluGetString(GLU_VERSION);
printf("OpenGL实现厂商的名字:%s\n", name);
printf("渲染器标识符:%s\n", biaoshifu);
printf("OpenGL实现的版本号:%s\n",OpenGLVersion);
printf("GLU工具库版本:%s\n", gluVersion);
return 0;
}


其中OpenGL实现的版本号表示当前显卡支持的版本,如果使用glutInitContextVersion();命令注意不要超过这个版本号。

比如我的显卡表示支持2.1版本,而程序里面选择了4.3版本:glutInitContextVersion(4, 3);那么运行结果就是直接跳出程序了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  opengl