首页 文章

如何使用optirun检查Linux系统上支持哪个版本的OpenGL?

提问于
浏览
4

我有很多问题/困惑设置我的笔记本电脑工作OpenGL编程/运行OpenGL程序 .

我的笔记本电脑有一个非常聪明(对我来说太聪明)的设计,英特尔CPU在芯片上有一个图形处理器,还有一个专用的显卡 . 具体来说,CPU是3630QM,带有“HD Graphics 4000”(一个非常令人兴奋的名字,我相信),而“正确”的图形处理器是Nvidia GTX 670MX .

理论上,根据Wikipedia,如果安装了正确的驱动程序,Linux下的HD图形芯片(Intel)支持OpenGL 3.1 . (他们可能不是 . )

根据NVIDIA,670MX可以支持OpenGL 4.1,所以理想情况下我想在这个GPU上开发和执行 .

我是否安装了驱动程序以使我能够在NVIDIA GPU上执行OpenGL 4.1代码?答:可能不会,目前我使用这个"optirun"事件在专用GPU上执行OpenGL程序 . 请参阅link以查看我设置计算机时所遵循的过程 .

我的问题是,我知道如何在670MX上运行已编译的程序;这将是'optirun ./programname',但我如何才能找到我系统上安装的图形驱动程序支持的OpenGL版本?跑'glxinfo |终端中的grep -i opengl'告诉我英特尔芯片支持OpenGl 3.0版 . 请参阅以下信息:

ed@kubuntu1304-P151EMx:~$ glxinfo | grep -i opengl
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Mobile 
OpenGL version string: 3.0 Mesa 9.1.3
OpenGL shading language version string: 1.30
OpenGL extensions:

我如何做同样或类似的事情来找出'optirun'下可用的支持,以及支持哪个版本的OpenGL?

Update

有人建议我用glGetString()来查找这些信息:我现在完全糊涂了!没有optirun,支持的OpenGL版本是'3.0 MESA 9.1.3',因此版本3,这是我的预期 . 但是,在optirun下,支持的OpenGL版本是'4.3.0 NVIDIA 313.30',因此版本4.3?如果NVIDIA的硬件规范仅支持版本4.1,那么它如何成为版本4.3?

1 回答

  • 6

    你可以在optirun下运行glxinfo:

    optirun glxinfo | grep -i opengl
    

    这两种卡都有不同的功能,因此通常可以获得不同的OpenGL版本 .

相关问题