Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
某些OpenGL功能不可用_Opengl_Linux Device Driver_Ubuntu 12.04 - Fatal编程技术网

某些OpenGL功能不可用

某些OpenGL功能不可用,opengl,linux-device-driver,ubuntu-12.04,Opengl,Linux Device Driver,Ubuntu 12.04,我有一些问题。我使用ubuntu 12.04,这是fglrxinfo命令的结果: display: :0.0 screen: 0 OpenGL vendor string: Advanced Micro Devices, Inc. OpenGL renderer string: ATI Mobility Radeon HD 4650 OpenGL version string: 3.3.11627 Compatibility Profile Context 但是OpenGL版本2和更高版本的

我有一些问题。我使用ubuntu 12.04,这是
fglrxinfo
命令的结果:

display: :0.0  screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: ATI Mobility Radeon HD 4650
OpenGL version string: 3.3.11627 Compatibility Profile Context

但是OpenGL版本2和更高版本的功能,如
着色器
不可用。我应该更新我的设备驱动程序吗?还是别的什么

这是一个常见问题。X11/GLX OpenGL ABI仅指定OpenGL-1.2之前的入口点(目前正在开发一个新的ABI)。这意味着,要访问OpenGL-1.2之外的任何内容,必须通过扩展机制加载advenced功能

由于您在Unbuntu上,这里提供了一步一步的指导,让您尽可能无痛:

  • sudo-apt-get-install-libglew-dev
  • 在所有项目中,源文件将
    #include
    替换为
    #include
  • 创建OpenGL上下文之后,例如在
    glutCreateWindow
    调用
    glewInit()
    并检查其错误代码之后(必须返回GLEW\u OK)

  • glGetString(GL\u版本)的输出是什么来自您的应用程序?另外,您如何确定它们不可用?'glCreateShader'在开发文件中不可用。'glCreateShader'在extenion(glext.h)开发文件中也不可用也许您可以发布一些OpenGL初始化代码。也许是一个最小功能的例子或什么的。