Для того, что вы пытаетесь сделать, вы должны полностью пропустить GLSurfaceView.Так как вы просто хотите сделать какую-то закадровую визуализацию OpenGL, вы можете использовать пиксельный буфер EGL и преобразовать его в растровое изображение.Смотрите эту ветку на anddev для решения.Я очень успешно использовал его в некоторых своих приложениях.
Реализация в нижней части этого потока немного ошибочна, поскольку она делает очень простой выбор EGL.Я бы порекомендовал реализовать более надежный селектор, который вы можете найти в GLWallpaperService Роберта Грина, если хотите.
Еще одно изменение, которое я закончил, заключалось в удалении вертикального зеркального отображения,Я просто перевернул окно просмотра в onSurfaceCreate, а не переворачивал вручную отрисованные пиксели при записи в растровое изображение.
Удачи!