Pour un programmeur en quête de créer des jeux vidéo, Il aura à choisir entre plusieurs solutions. La première, est l’utilisation des bibliothèques bas niveau, ou les API, comme par exemple OpenGL, DirectX, ou Vulkan. Malgré que l’utilisation de ces bibliothèques offre une puissance énorme pour le jeu, ils restent rarement utilisés pour ce cas car ils sont très difficiles à utiliser. C’est comme l’assembleur, c’est un langage bas niveau très puissant, mais trop difficile pour être utilisé dans la programmation quotidienne. Ils sont généralement réservés pour des applications plus spécifiques, ou la création de plateformes graphiques ou les moteurs de jeux vidéo.
Le 2-ième choix est les frameworks ou les plateformes. Ils sont généralement vus comme une conglomération de bibliothèques visant à faciliter la programmation des jeux. Ils sont très populaires parmi les développeurs, puisque contrairement aux API, ils offrent une certaine aisance pour l’utilisation directe des fonctions et des routines Intrinsèques aux jeux vidéo. Comme par exemple le dessin direct sur l’écran, le chargement des images et des objets en 3D et des fichiers son, la capture de l’interface utilisateur comme le clavier ou la souris ou la manette, le scrolling, le bit blitting,le clipping, les sprites, le networking…etc. Ça peut Inclure les plateformes comme, SDL, Allegro, PyGame, SFML, ou Raylib.
Et dernièrement, les moteurs de jeux vidéo. Ces derniers sont totalement différents des 2 précédents dans le sens où ils ne tournent pas autour d’un langage de programmation qui va les utiliser comme des bibliothèques comme pour les solutions précédentes. Dans les moteurs de jeu, généralement le langage de programmation est, comme parmi d’autres, un simple outil utilisé pour la création de jeux vidéo. Ainsi le plus souvent les objets créés à l’extérieur du langage de programmation, sont utilisés pas plusieurs outils du moteur. Les outils sont concrètement des petits logiciels de haut niveau destinés à l’implémentation des opérations beaucoup plus complexes que de simples opérations graphiques. Comme par exemple les éditeurs de niveaux, les éditeurs de maps, moteurs physiques, éditeurs d’animation, éditeurs de particules…etc. On peut citer quelques moteurs de jeux les connus comme Godot, Unity, Unreal Engine, ou encore Game Maker. La vidéo en haut est une introduction au moteur Godot, et plus précisément sa nouvelle version 4 qui offre beaucoup d’améliorations par rapport aux versions précédentes.