LWJGL报告说现代的nvidia卡不支持OpenGL

时间:2015-03-04 23:40:39

标签: libgdx lwjgl

所以我在过去的一天里一直在试用libgdx并且运行良好,直到我意识到它只能在我的笔记本电脑上使用英特尔图形,而它立即关闭我的桌面上的nvidia 750ti。

根据this github issue,此问题应该已在this commit中修复。

我还尝试过其他帖子推荐的内容,例如herehere(自提交以来不再需要,但值得一试)

System.setProperty("org.lwjgl.opengl.Display.allowSoftwareOpenGL", "true");

但不管你信不信,它不起作用。这是堆栈跟踪

Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: OpenGL is not supported by the video driver.
    at com.badlogic.gdx.backends.lwjgl.LwjglGraphics.createDisplayPixelFormat(LwjglGraphics.java:229)
    at com.badlogic.gdx.backends.lwjgl.LwjglGraphics.setupDisplay(LwjglGraphics.java:174)
    at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:138)
    at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120)
Caused by: org.lwjgl.LWJGLException: X Error - disp: 0x7f0f4c000c50 serial: 194 error: BadValue (integer parameter out of range for operation) request_code: 154 minor_code: 24
    at org.lwjgl.opengl.LinuxDisplay.globalErrorHandler(LinuxDisplay.java:320)
    at org.lwjgl.opengl.LinuxContextImplementation.nCreate(Native Method)
    at org.lwjgl.opengl.LinuxContextImplementation.create(LinuxContextImplementation.java:51)
    at org.lwjgl.opengl.ContextGL.<init>(ContextGL.java:132)
    at org.lwjgl.opengl.Display.create(Display.java:850)
    at org.lwjgl.opengl.Display.create(Display.java:757)
    at com.badlogic.gdx.backends.lwjgl.LwjglGraphics.createDisplayPixelFormat(LwjglGraphics.java:220)
    ... 3 more

将堆栈跟踪与this guy进行比较时,原因通常不是Pixel format is not accelerated而是Caused by: org.lwjgl.LWJGLException: X Error - disp: 0x7f12cc000c50 serial: 194 error: BadValue (integer parameter out of range for operation) request_code: 154 minor_code: 24。 也许这仅仅是因为我正在运行Linux并且他不是,我不知道。虽然integer parameter out of range for operation错误是LWJGL认为我的视频驱动程序不支持OpenGL的原因,但看起来确实很奇怪,但这只是猜测。

Here is the exact code that i'm trying to run。我不认为代码应该受到责备,因为它在我的笔记本电脑上运行得很好,但为了以防万一,我已将其添加到此处。

我的笔记本电脑和台式机都安装了最新的Arch Linux安装程序,因此操作系统不应该成为问题。

提前致谢!

1 个答案:

答案 0 :(得分:2)

解决方案非常简单,感谢P.T.的帮助。

我不知道出了什么问题,但实际上根本没有OpenGL应用可以运行,而简单的重启就解决了这个问题。