Menu

Compétence : Langages informatiques bas et moyen niveau

Utiliser des langages compilés ou fortement typés, utilisés pour le développement moteur, gameplay ou systèmes de jeu, en appliquant les principes de programmation structurée et orientée objet, la gestion de la mémoire et l'optimisation des performances (C, C++,) - Programmer en utilisant des langages informatiques (par exemple Rust, C, C++…) qui offrent un contrôle fin sur l'utilisation de la mémoire et l'optimisation des performances ou qui permettent de développer le cœur des moteurs de jeux, des systèmes critiques ou des ensembles nécessitant beaucoup de ressources.

Niveaux dans la compétence

1 - Reconnaître les principaux langages compilés ou fortement typés (C, C++, C#) utilisés dans le jeu vidéo. Identifier leurs usages généraux et leurs différences fondamentales. Exemple : reconnaître que C est utilisé pour des modules proches du système nécessitant un contrôle précis de la mémoire, tandis que C# est couramment employé dans des moteurs comme Unity pour la logique gameplay.,2 - Comprendre les fondements de la programmation structurée et orientée objet dans un langage comme C++ ou C#. Être capable d'expliquer la logique d'un code simple. Exemple : commenter le fonctionnement d'une boucle ou d'une classe implémentant un système de score ou de chronomètre.,3 - Programmer de manière autonome des fonctionnalités simples dans un langage compilé ou fortement typé. Structurer son code avec des classes, fonctions et structures de contrôle. Exemple : coder en C# un système de déclenchement d'événements basé sur les entrées du joueur dans un niveau.,4 - Optimiser, maintenir et structurer un code complexe en respectant les contraintes de performance et de mémoire. Utiliser les outils de débogage du moteur. Exemple : implémenter un comportement IA en C++ avec gestion de la mémoire dynamique et mesure des performances via un profiler.,5 - Concevoir et intégrer des systèmes critiques ou fortement interconnectés (rendu, physique, audio) en optimisant l'architecture logicielle. Exemple : développer un gestionnaire de scènes qui optimise le chargement et le déchargement dynamique des ressources.,6 - Développer des architectures moteur avancées ou des systèmes innovants en langage bas niveau. Définir les standards internes de programmation et accompagner les équipes dans leur mise en œuvre. Exemple : concevoir un système multithreadé de streaming de données pour un monde ouvert, avec allocation mémoire optimisée et gestion des ressources en temps réel.

Activités associées

Métiers associés