OpenGL
Dans l'informatique graphique des années 1990, chaque constructeur avait sa propre interface de programmation, ses propres règles, sa propre vision du rendu 3D. Silicon Graphics utilisait IrisGL, d'autres avaient leurs solutions maison. Les développeurs qui voulaient faire tourner leur application sur plusieurs plateformes devaient réécrire leur code autant de fois qu'il y avait de systèmes différents.
C'est dans ce chaos que Kurt Akeley et Mark Segal, tous deux chez SGI, ont eu une idée qui paraissait presque utopique : créer un standard ouvert et universel pour la programmation graphique 3D. Ils ne se contentaient pas de rêver, ils sont passés à l'acte. En juin 1992 naissait OpenGL, la première spécification vraiment multiplateforme pour la 3D.
Pour éviter qu'OpenGL devienne un nouveau produit propriétaire de SGI, l'entreprise a immédiatement constitué un conseil de surveillance : l'Architecture Review Board. Digital Equipment, Evans & Sutherland, Intel, IBM, Hewlett Packard, Intergraph, Microsoft, Silicon Graphics et Sun Microsystems se sont tous assis autour d'une table. Imaginez la scène : des concurrents directs qui acceptent de travailler ensemble sur un projet commun.
Le pari d'OpenGL tenait en quelques lignes directrices simples. D'abord, standardiser l'accès au matériel graphique sans se mêler de ce qui ne le regardait pas. La gestion des fenêtres ? Laissée au système d'exploitation. L'interface utilisateur ? Pas notre problème. Cette approche minimaliste a fait sa force.
Les créateurs ont fait des choix tranchés. Ils ont refusé d'inclure des fonctions qui ne pouvaient pas être accélérées par le matériel. Tout ce qui relevait de la commodité ou de la gestion de données était renvoyé vers des bibliothèques de niveau supérieur. GLU, la bibliothèque utilitaire qui accompagnait OpenGL, prenait en charge les matrices et les surfaces NURBS que les développeurs réclamaient.
En janvier 1996, OpenGL 1.1 franchit une étape importante. Les textures étendues, les opérations logiques en mode RGB et les tableaux de vertices changent la donne. Ces améliorations répondent aux demandes pressantes d'une industrie qui commence à comprendre le potentiel de la 3D temps réel.
L'adoption ne s'est pas faite du jour au lendemain. D'abord les applications scientifiques, suivies par l'industrie. Les logiciels de CAO ont compris l'intérêt d'OpenGL : culling de faces avant, lignes pointillées, tampons de stencil, toutes ces fonctionnalités étaient là, prêtes à l'emploi.
Le monde du jeu vidéo restait sceptique jusqu'à ce que John Carmack d'id Software prenne une décision qui allait tout changer. En 1996, il décide d'utiliser OpenGL pour une nouvelle version de Quake, alors que les PC équipés d'accélération 3D abordable se comptaient sur les doigts de la main. Pourtant, cette version de Quake a démontré qu'un standard ouvert pouvait rivaliser avec n'importe quelle solution propriétaire. Les constructeurs de cartes graphiques ont pris note.
OpenGL a grandi avec son époque. Quand les GPU sont devenus programmables, la version 2.0 de 2004 a introduit GLSL, le langage de shaders qui donnait aux développeurs un contrôle direct sur le traitement des vertices et des pixels. Cette évolution majeure reflétait l'émergence d'une nouvelle génération de processeurs graphiques.
L'explosion des appareils mobiles a donné naissance à OpenGL ES. Cette version allégée, taillée sur mesure pour les systèmes embarqués, est devenue l'âme graphique des smartphones et tablettes. Son succès a renforcé l'écosystème OpenGL dans son ensemble, créant un cercle vertueux entre desktop et mobile.
En 2006, le groupe Khronos reprend les rênes d'OpenGL. Cette organisation à but non lucratif garantit la continuité du standard tout en l'adaptant aux nouvelles technologies. Le changement de gouvernance marque une nouvelle étape dans la maturité d'OpenGL.
Trente ans après sa naissance, les domaines d'application d'OpenGL donnent le vertige. L'imagerie médicale s'appuie dessus pour visualiser des scanners en 3D. Les simulateurs de vol l'utilisent pour recréer des environnements réalistes. Hollywood s'en sert pour ses effets spéciaux au cinéma et à la télévision. Adobe l'a intégré dans After Effects, Premiere Pro et Photoshop. Les grandes chaînes de télévision comme CBS, NBC, CNN et BBC ont fait appel à OpenGL pour leurs couvertures d'élections.
Le mécanisme d'extensions d'OpenGL explique en partie cette longévité exceptionnelle. Les fabricants peuvent ajouter de nouvelles fonctionnalités sans casser l'existant. Ces extensions, une fois adoptées massivement, finissent par rejoindre le standard officiel. Cette souplesse a permis à OpenGL d'évoluer sans jamais perdre sa compatibilité descendante.
OpenGL reste la seule API graphique vraiment universelle. Windows, macOS, Linux, systèmes embarqués : partout où il y a un écran et un processeur graphique, OpenGL peut s'installer. WebGL apporte ses capacités aux navigateurs web, Vulkan prend le relais pour les applications haute performance. L'héritage continue.