【问题标题】:OpenGL Tutorial ErrorOpenGL教程错误
【发布时间】:2013-03-18 15:16:10
【问题描述】:

我设法从here 构建教程,但是在执行它们时出现错误:

X Error of failed request:  BadRequest (invalid request code or no such operation)
Major opcode of failed request:  154 (GLX)
Minor opcode of failed request:  34 ()
Serial number of failed request:  34
Current serial number in output stream:  33

Google 告诉我这个错误与图形驱动程序有关,所以关于我的系统的信息可能有用;我在三星 700Z7C 笔记本上使用 Ubuntu 12.04 64 位。

【问题讨论】:

  • 您可能应该发布您正在使用的确切显卡以及什么驱动程序。
  • 您的显卡/驱动似乎不支持主要功能,您是否正确安装了驱动?尝试运行 glxgears 并说它是否有效
  • glxinfo | egrep "OpenGL (renderer|version|shading)" 的输出是什么?
  • 是的,glxgears 有效。对于我得到的 glxinfo:OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 0x300) ; OpenGL version string: 2.1 Mesa 8.0.4 ; OpenGL shading language version string: 1.20 编辑:对不起,我不知道如何在此处放置换行符。
  • @AndreasT:遗憾的是,您不能在 cmets 中放置换行符。只需将其编辑到您的问题中即可。

标签: c++ opengl driver ubuntu-12.04


【解决方案1】:

你有:

OpenGL 版本字符串:2.1 Mesa 8.0.4

第三页,"What You Need"

...但是要执行代码,您必须有一个允许 OpenGL 的编程环境。具体来说,您需要能够运行 OpenGL 3.3 版的硬件。 ...

Samsung 700Z7C notebook:

图形:外部或集成:外部(Optimus

Optimus:

当不存在用于在图形适配器之间切换的软件机制时,系统根本无法使用 NVIDIA GPU,即使安装的图形驱动程序支持它。

Make sure you're routing your GLX requests to the NVidia chip (with the proprietary drivers) and not the Intel one.

【讨论】:

  • 我不知道。我认为 Optimus 是默认可用的。谢谢,我会试试的。
【解决方案2】:

您应该检查 3 件事 - 您的显卡是否支持 OpenGL 3.3(我相信这是 arcsynthesis 书中使用的版本),您的驱动程序是否是最新的,您的代码是否真的正常?我们可能会删除 3,但如果您告诉我们您尝试运行哪个示例,它仍然会有所帮助。

【讨论】:

  • 我编译了第一个教程。好吧,根据genpfault的回答,我必须先安装“Bumblebee”。我会试试看。
猜你喜欢
  • 2014-01-20
  • 2011-05-06
  • 1970-01-01
  • 2011-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多