OpenGLES se renderizará a la mayor resolución posible en la pantalla retina automáticamente (dado que ha configurado su ventana gráfica para el ancho y alto de la pantalla, etc.) por lo que el problema proviene de su renderizado OpenGL.
A OpenGLES no le importa el sufijo @ 2X que ha adjuntado a la imagen (esto es para los marcos Cocoa Touch). Sin embargo, sí se preocupa por la resolución de la imagen. Para obtener los mejores resultados, debe usar imágenes cuadradas que tienen un ancho y una altura que es una potencia de dos (por ejemplo, 1024, 2048, etc.).
Debe asegurarse de que cuando cargue la texure en OpenGLES esté utilizando el formato de imagen correcto, y que no esté comprimiendo de ninguna manera.
La otra cosa con la que debes experimentar es con los parámetros de textura. Por ejemplo:
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
Espero que esto lo guíe en la dirección correcta.
has probarlo en la retina dispositivo real o simulador? – Max