Si l'utilisation de OpenGL ES 1.1 ou 2.0 dépend de ce que vous voulez faire dans votre application, et de la façon dont de nombreux appareils vous en avez besoin pour être compatible avec. Tous les appareils iOS en charge OpenGL ES 1.1, où seul l'iPhone 3G S et les périphériques les plus récents (iPhone 3G S, iPhone 4, iPad, et les 3e et 4e génération iPod touch) en charge OpenGL ES 2.0. Cependant, tous les appareils iOS d'Apple est en train d'expédition sont compatibles avec OpenGL ES 2.0. Le pourcentage des appareils qui ne prennent pas en charge OpenGL ES 2.0 est en baisse tous les jours. Tous les iPads ont pris en charge OpenGL ES 2.0, de lancement, de sorte que vous êtes assuré d'avoir le soutien du si vous la cible de ce facteur de forme.
OpenGL ES 2.0 et 1.1 l'utilisation différente et assez incompatible rendu des pipelines. OpenGL ES 1.1 utilise une fonction fixe pipeline, où vous nourrir dans la géométrie et les données de texture, ensemble éclairage, etc. les états, et laissez OpenGL occupons du reste pour vous. OpenGL ES 2.0 est basé autour d'un pipeline programmable, où vous fournissez vertex et fragment shaders pour gérer les détails de la façon dont votre contenu est affichée à l'écran.
Parce que vous devez écrire votre propre code pour les remplacer, même les plus élémentaires des fonctions intégrées, en utilisant OpenGL ES 2.0 pour simple 3-D applications peuvent nécessiter plus d'efforts que d'OpenGL ES 1.1. Aussi, la plupart des exemples d'applications et de writeups que vous trouverez là-bas sera orientée vers la 1.1, de sorte qu'il peut être plus difficile de commencer avec la version 2.0 de l'API.
Cependant, le fait que vous pouvez écrire vos propres routines pour traiter votre géométrie et de textures et de la façon dont ils sont affichés à l'écran signifie que OpenGL ES 2.0 vous permet de faire des choses qui ne serait tout simplement pas possible (ou exigerait une énorme quantité d'effort) pour faire de l'OpenGL ES 1.1. Ces inclure des effets comme la caricature de l'ombrage et de l'occlusion ambiante, de l'éclairage, ainsi que de vous laisser faire quelque chose d'intéressant, comme le déchargement massivement parallèle de travail pour le GPU.
Si vous pouvez voir quelques exemples de ce que vous pouvez faire avec OpenGL ES 2.0, vidéo pour le cours, j'ai appris sur le sujet est disponible sur iTunes U, et j'ai créé deux exemples d'applications ici et ici.
Quand il s'agit de compatibilité multiplate-forme, les shaders ont été disponibles sur le bureau OpenGL pour un peu de temps maintenant, donc tout ce que vous créez à l'aide de OpenGL ES 1.1 ou 2.0 devrait être assez portable pour le bureau.
Si vous pouvez faire le rendu que vous souhaitez en OpenGL ES 1.1, vous pouvez aller de cette façon à offrir le maximum de compatibilité de l'appareil. Cependant, une grande majorité des appareils iOS en usage aujourd'hui en charge OpenGL ES 2.0 (je ne trouve pas de statistiques sur ce droit maintenant, mais il était basé sur les unités livrées), et ce nombre ne fera que croître au fil du temps. OpenGL ES 2.0 vous permet de retirer une partie de superbes effets (voir Epic Citadel) qui pourrait vous aider à définir votre application à part des autres.