Muchos objetos con diferentes texturas en OpenGL ES 2.0

Soy nuevo en OpenGL ES 2.0 con su canalización programable y estoy portando una aplicación que renderiza muchos objetos, todos con diferentes texturas. Entonces, ¿esto requerirá llamar a glDrawArrays para cada objeto y cambiar las texturas entre llamadas? ¿O hay otra forma de dibujar múltiples objetos con diferentes texturas con una sola llamada glDrawArrays?

Pregunto porque noté que hacer muchas llamadas a glDrawArrays es MUCHO más lento cuando se intenta usarlas en lugar de glBegin / glEnd con OpenGL de 'escritorio'.

Estoy renderizando mosaicos de mapa para que TODAS las texturas sean diferentes, se carguen dinámicamente (no puede pasar mucho tiempo procesándolas como si se cargaran una vez) y también bastante grandes (hasta 512x512).

Respuestas a la pregunta(1)

Su respuesta a la pregunta