Кажется, здесь есть несколько проблем.
Прежде всего, если вы пытаетесь отобразить «картинки» через OpenGL (ES), вы имеете в виду текстуры (читаемый формат OpenGL для «картинок» или «изображений»), верно? Если вы не уверены в том, о чем я говорю, найдите руководство по отображению изображений с использованием OpenGLES. Узнайте, как отобразить выравнивание 1, и вы сможете отобразить 4.
Поверхность может иметь только одну картинку
Возможно, вы что-то неправильно поняли. GLSurfaceView может нарисовать столько текстур, сколько может обработать ваша видеопамять.
По сути, для отображения ваших текстур вы будете рисовать 2 или 4 квада и привязывать к ним соответствующие текстуры.
Насчет многопоточности, я полагаю, вы собираете свои картинки асинхронно. Просто дождитесь полной картины и, находясь в потоке OpenGL, создайте текстуру и привяжите ее к четырехугольнику.