Я пытаюсь собрать OpenSceneGraph 3.2 для архитектуры Ubuntu armhf, но получаю ошибку компиляции о том, что символ не найден. Рассматриваемый символ — glReadBuffer
. Я посмотрел заголовок GLES2/gl2.h
, и действительно, этого символа там нет. Однако этот символ присутствует в GLES3/gl3.h
, и в онлайн-документации предполагается, что эта функция была добавлена в OpenGL ES 3.0. Однако я нашел функцию с именем glReadBufferNV
в GLES2/gl2ext.h
(которая не имеет #include
в исходных файлах.
Мне интересно, можно ли использовать glReadBufferNV
вместо glReadBuffer
и каковы возможные побочные эффекты. Я подозреваю, что NV
означает Nvidia и что это реализация только для Nvidia. Это правильно? Если да, то есть ли способ получить glReadBuffer
в OpenGL ES 2.0 (у меня сложилось впечатление, что OpenSceneGraph можно построить под OpenGL ES 2.0)?
Редактировать: как оказалось, код, который создает эту часть OpenSceneGraph, был исключен при сборке с помощью OpenGL ES или OpenGL 3.0. Тем не менее, мне все еще интересно, что особенного в glReadBufferNV
.