Метод "glActiveTexture" недоступен - PullRequest
1 голос
/ 15 января 2012

Я начинаю проникать в игровой движок libGDX.Я скопировал этот пример и попытался запустить.Он работает нормально, как приложение для Android, но когда я хочу, чтобы он работал как приложение Java, он выдает следующую ошибку.

Исключение в потоке "Thread-2" javax.media.opengl.GLException: javax.media.opengl.GLException: метод "glActiveTexture" недоступен

Ответы [ 2 ]

4 голосов
/ 16 января 2012

Может быть, вам следует изменить эту строку: GL10 gl = Gdx.graphics.getGL10(); на GL20 gl = Gdx.graphics.getGL20();. Потому что согласно официальной документации OpenGL:

glActiveTexture поддерживается только в том случае, если версия GL составляет 1,3 или более, или если ARB_multitexture включена в строку, возвращаемую glGetString при вызове с аргументом GL_EXTENSIONS.

Разница может заключаться в том, что Windows по умолчанию предоставляет контекст OpenGL 1.1 и предлагает все дополнительные функции только через расширения (т. Е. glActiveTextureARB(), которые Java OpenGL может не использовать)

0 голосов
/ 18 апреля 2014

Я получил эту ошибку. GLView (или другая программа для просмотра версии GL) показывает мне, что мой текущий OpenGL - 1.1, а этот метод - только на 1.3 и выше. Мое решение заключается в обновлении драйверов с помощью Центра обновления Windows (Мой драйвер - обновление драйверов ATI Technologies Inc. для ATI Radeon). После обновления до версии 3.0 все в порядке.

...