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