Le Kronos Group vient de dévoiler Open GL ES 3.2, la nouvelle version de l’API graphique destinée au monde mobile. La grosse nouveauté, c’est l’intégration de l’Android Extension Pack – dévoilé avec Android 5.0 Lollipop – directement au sein de l’API. De nouveaux effets sont également de la partie afin de réduire l’écart de qualité graphique des jeux mobiles par rapport à leurs homologues sur console ou PC.

AEP

Les API (Application Programming Interface) graphiques permettent aux développeurs d’applications ou de jeux de faire le lien plus facilement entre le système et la puce graphique. Sous Android, l’API graphique utilisée est Open GL ES, une version mobile de l’API Open GL qu’on connaît dans le monde PC. Le Kronos Group, en charge de la norme, a profité de la conférence SIGGRAPH 2015 pour dévoiler Open GL ES 3.2. La version 3.1 datait de mars 2014 et de nombreux benchmarks commencent d’ailleurs à l’utiliser. Pour la version 3.2, deux nouveautés principales sont à noter : l’intégration d’Android Extension Pack et de nouveaux effets.

 

Open GL ES 3.2 intègre désormais l’Android Extension Pack

Android Extension Pack a été annoncé par Google à l’I/O 2014. Le but était de proposer aux développeurs des outils afin de créer des jeux encore plus riches visuellement comme avec la tesselation, les geometry shaders, la compression des textures ASTC ou encore un rendu utilisant la virgule flottante. Open GL ES 3.1 ne supportait pas ces fonctionnalités, et il fallait alors passer par l’Android Extension Pack pour les puces compatibles, par exemple la tesselation de l’Adreno 420. Puisqu’Open GL ES 3.2 intègre les fonctionnalités d’Android Extension Pack, le travail devrait être facilité pour les développeurs et le consommateur pourra facilement savoir, lors de l’achat, si la puce intégrée à son appareil est compatible avec ces nouveaux effets.

Pour rappel, la tessellation permet de donner une impression de profondeur et de hauteur sur les objets, par exemple sur les briques d’un mur. La compression ASTC permettra quant à elle de réduire la bande passante utilisée lors des calculs pour notamment augmenter le nombre d’effets ou la fluidité du jeu. La vidéo ci-dessous montre ces effets dans la pratique sur un Tegra K1.

Lien Youtube
Chaine Youtube FrAndroid

 

HDR, fumée, particules, etc.

En plus d’intégrer l’Android Extension Pack, Open GL ES 3.2 ajoute le support de plusieurs nouvelles fonctionnalités. On trouve ainsi un mode HDR pour le tone mapping qui devrait donner plus de libertés aux développeurs pour les ambiances lumineuses, mais aussi les effets de fumée et de particules pour des scènes plus réalistes. Des fonctionnalités sont aussi de la partie pour alléger les calculs, à l’image du deferred rendering. Quant au physically based rendering et à l’illumination globale, ces dernières fonctionnalités permettent d’obtenir des effets de lumière encore plus réalistes.


Crédits images

 

Open GL ES 3.2 sous Android M ?

Au final, le Kronos Group propose une API particulièrement complète, qui la rapproche énormément d’une API classique à l’image de DirectX ou même de la version d’Open GL destinée aux ordinateurs. Open GL ES 3.2 est attendu pour la prochaine version d’Android et on espère ainsi qu’Android M intégrera la nouvelle API. Le Kronos Group n’a toutefois pas indiqué si des SoC étaient déjà pleinement compatibles avec Open GL ES 3.2 ou s’il faudra attendre encore un peu.