Comment choisir le meilleur SDK OpenGL®?
Un certain nombre de kits de développement logiciel (SDK) Open Graphics Library® (OpenGL®) sont disponibles, bien que beaucoup soient spécifiquement conçus pour une utilisation spécifique. Les développeurs de cartes graphiques et de matériel fournissent généralement un kit de développement logiciel (SDK) OpenGL® assez complet en ce qui concerne les exemples de code et la documentation, mais pouvant également inclure des fonctionnalités spécifiques au matériel produit par la société. Certains SDK visent à fournir un accès facile à l'interface de programmation abstraite (API) OpenGL®, en se concentrant généralement sur un usage particulier, tel que la visualisation moléculaire, la physique ou l'art interactif. Un kit de développement logiciel OpenGL® SDK plus complet peut inclure un framework ou un scénario entièrement fonctionnel qui étend les fonctionnalités de l'API principale, bien que sa courbe d'apprentissage puisse être plus longue que celle d'un SDK plus simple. Un certain nombre de kits de développement logiciel OpenGL® se concentrent sur la fourniture de graphiques et d'algorithmes hautes performances, parfaitement adaptés à l'animation en temps réel, aux environnements tridimensionnels interactifs (3D) ou aux jeux vidéo.
Une distinction importante à faire est qu'un SDK OpenGL® est différent de l'API OpenGL®. L'API est l'interface de base requise pour l'écriture et la compilation d'une application OpenGL®. Un kit de développement logiciel OpenGL® SDK peut être un ensemble d’outils, de code source, de documents et de bibliothèques pouvant étendre les fonctionnalités de l’API, inclure des pilotes OpenGL® améliorés ou fournir des outils facilitant l’utilisation de l’API. Les développeurs d'OpenGL® ne conservant aucun SDK OpenGL® officiel, tous les kits sont écrits et développés par des communautés, des programmeurs ou des entreprises individuels, indépendamment de l'OpenGL® Architecture Review Board (ARB).
Le meilleur SDK OpenGL® sera celui qui convient à l’expertise du programmeur et qui n’est pas trop complexe pour le projet. Pour les projets simples, tels que l'affichage des résultats d'une fonction ou d'un algorithme, un kit de développement logiciel (SDK) de base serait généralement bien plus adapté qu'un kit fourni par le fabricant de la carte graphique pour se concentrer sur des fonctionnalités spéciales telles que le rendu des cheveux translucides. De même, dans certains cas, le meilleur SDK peut être aucun SDK, car les capacités de dessin de base d'OpenGL® ne sont présentes qu'avec l'API.
Dans le cas de programmes volumineux ou interactifs nécessitant une charge importante de chargement de modèle et de manipulation d'images, un SDK OpenGL® plus complet pourrait être requis. Les SDK commerciaux et à source ouverte sont disponibles dans différents niveaux de complexité, ce qui peut rendre très faciles l'accès à de nombreuses fonctions fréquemment utilisées, telles que la construction d'objets tampon de sommets ou l'animation de minutage. Une complication avec un SDK qui implémente quelque chose d’aussi grand qu'un scénario complet est cependant que cela nécessitera une courbe d’apprentissage abrupte, car le code pour le SDK pourrait être très éloigné des techniques de base OpenGL®.
Les outils fournis avec un SDK OpenGL® peuvent parfois être importants pour aider à rationaliser le développement. Celles-ci peuvent inclure la visualisation de programmes pour voir à quoi ressemblera une scène ou un modèle lors du rendu avec le SDK ou des plug-ins pour les programmes de modélisation couramment utilisés, permettant ainsi aux fichiers d'être exportés directement dans des formats utilisables par le SDK. Outre les outils, un bon SDK aura pour caractéristique une documentation adéquate, ainsi qu’une communauté disponible pour répondre aux questions qui pourraient éventuellement se poser.