L'utilisation de ce nouveau contexte est-il nécessaire ? Une grande partie des fonctions OpenGL 3 et 4 étaient déjà disponibles dans OpenGL 2.1 (ou même dans des versions précédentes) dans le core ou sous forme d'extensions. De plus, tous les possesseurs de PC n'ont pas de carte graphique compatible OpenGL 3 (à partir de la GeForce 8 pour Nvidia et Radeon HD2000 pour ATI) et encore moins OpenGL 4. Si vous voulez que votre application puisse être utilisée par le plus de personnes possible, la meilleur chose est peut-être d'utiliser l'ancien contexte de rendu OpenGL mais en évitant d'utiliser les fonctions déclarées deprecated dans OpenGL 3.2/4.0.
Où trouver les librarires pour développer en OpenGL 3.x ou 4.x ? Comme pour les versions précédentes, on continue d'utiliser le même header et .lib (ou .a) depuis OpenGL 1.1. Le mécanisme des extensions permet d'avoir accès aux nouvelles fonctions.
Plus de détails sur cette page. Note: un nouvel header pour OpenGL 3 est en cours de développement, en attendant vous pouvez continuer à vous faciliter la vie avec des librairies comme
GLee ou
GLew.
OpenGL 3.1 ne supporte plus les fonctions qui permettaient de gérer en interne les matrices. C'est à vous de créer et modifier les matrices des objets et les matrices de projections pour les passer aux shaders. Cela impose donc l'utilisation d'une librairie mathématiques. Khronos ne propose pas de librairie utilitaire officielle pour cela (comme D3DX pour Direct
X). Vous devez soit en faire une vous même soit en trouver une sur le net.