我开始进入libGDX游戏引擎。我复制了this示例并尝试运行。 它作为Android应用程序运行正常,但是当我希望它作为Java应用程序运行时,它会抛出以下错误。
线程“Thread-2”中的异常javax.media.opengl.GLException: javax.media.opengl.GLException:方法“glActiveTexture”不可用
答案 0 :(得分:4)
也许您应该更改此行:GL10 gl = Gdx.graphics.getGL10();
到GL20 gl = Gdx.graphics.getGL20();
。因为根据官方的OpenGL文档:
仅当GL版本为1.3或更高版本时,或者当使用参数GL_EXTENSIONS调用glGetString返回的字符串中包含ARB_multitexture时,才支持glActiveTexture。
不同之处在于,Windows默认情况下提供OpenGL 1.1上下文,并且仅通过扩展(即Java OpenGL可能不使用的glActiveTextureARB()
提供所有附加功能)
答案 1 :(得分:0)
我收到了这个错误。 GLView(或其他查看GL版本的程序)告诉我,我当前的OpenGL是1.1,这个方法仅在1.3及更高版本。 我的解决方案是使用Windows Update更新驱动程序(我的驱动程序 - ATI技术公司ATI radeon驱动程序更新)。更新到3.0版之后一切都很好。