Le Microprogramme de deuxième cycle en développement de jeux vidéo forme les étudiants aux principes de développement logiciel propres au domaine du logiciel de jeu vidéo, et plus particulièrement les jeux vidéo sur les plateformes mobiles (téléphones et tablettes).
Ce programme vise à spécialiser des professionnels déjà formés en programmation générale et à leur donner une formation complémentaire axée sur le développement de jeux vidéo avec les outils et les pratiques utilisés dans cette industrie.
La formation, courte et à distance, permet le travail en équipe virtuelle avec un écosystème d'outils logiciels conformes à ce qui est utilisé en entreprise. Elle offre un horaire flexible avec une grande partie de cours asynchrone et une partie synchrone avec des horaires de suivi projet ajustables.
Ce programme permet de s'initier aux aspects fondamentaux et aux pratiques liées au développement de jeux vidéo dans un contexte où l'on exploite un écosystème d'outils professionnels.
De façon plus spécifique, le programme permet :
Les candidats qui démontrent par leur CV qu'ils possèdent des connaissances et/ou de la formation appropriée pourraient se voir reconnaître de l'expérience de travail.
*Le dossier de candidature comprend :
Ce programme n'est pas contingenté.
Les admissions se font aux trimestres d'automne et d'hiver.
Le programme d'études est offert à temps partiel seulement.
Une très bonne connaissance de la langue française, de même qu'une compréhension de l'anglais écrit est nécessaire et donc fortement suggérée.
Tout étudiant dont la langue maternelle est autre que le français qui éprouve des difficultés ou qui a une faiblesse en français peut, après avoir avisé la direction de programme, s'inscrire au cours 7FRA419 Français global et actes de paroles II. Ce cours sera hors programme.
D'un autre côté, l'étudiant dont la langue maternelle est le français et qui éprouve des difficultés, pourra s'inscrire au cours 7LNG106 Orthographe et grammaire de base. Ce cours sera aussi hors programme.
Plusieurs secteurs connexes cherchent des spécialistes maîtrisant les outils de programmation propres au domaine du jeu. Certains simulateurs médicaux d'entreprises de technologies médicales sont développés avec des outils similaires à ceux du domaine du jeu vidéo. D'autres entreprises développent des simulateurs d'avion, de combats, etc. L'apparition de « jeux sérieux » pour la formation en entreprise, que ce soit la formation du personnel, des gestionnaires, etc. Ces jeux doivent également être développés par du personnel maîtrisant les outils propres à l'industrie du jeu.
Ce programme comprend 3 cours (9 crédits)
8INF865 | Programmation de plateformes mobiles |
8INF960 | Principes de conception et de développement de jeux vidéo |
8INF964 | Programmation avancée avec un moteur de jeu (8INF960) |
DESCRIPTION DES COURS
8INF865 Programmation de plateformes mobiles
Comprendre les différents modèles et principes qui permettent de concevoir des applications mobiles intuitives. Maitriser les contraintes relatives à la programmation sur plateformes mobiles.
Principes de conception d'une app, Informatique ubiquitaire et applications mobiles, Intégration d'éléments de persuasion dans une app; Environnement de développement; Composants d'une app (activités, services, broadcast, content provider); Réalisation d'une interface utilisateur ergonomique; Différents types de vue, fragments; Gérer efficacement les notifications; Reconnaissance de gestes; Gestion efficace de la mémoire; Sauvegarde de données; Avantage de base de données NoSQL, utilisation de services web.
Formule pédagogique : Magistral et/ou formation à distance
8INF960 Principes de conception et de développement de jeux vidéo
Initier au processus de conception, de préproduction, de développement et de déploiement d'un jeu vidéo sur diverses plateformes. Se familiariser avec l'architecture logicielle et algorithmique spécifique d'un jeu vidéo. Se sensibiliser aux façons de faire de l'industrie du jeu et à ses particularités. Développer à des jeux de petite envergure en équipes restreintes en utilisant des outils propres à l'industrie.
Conception de jeu vidéo. Méthode d'idéation et de design d'un concept de jeu. Théorie des jeux. Étude sur la jouabilité "Gameplay". Équilibre dans la structure des éléments d'un jeu : pointages, options, défis versus habilités, ajustement dynamique, chances, etc. Ergonomie des interfaces de jeux et développement d'un système d'interaction immersif avec l'usager. Les différents types de jeux, clientèle cible et modèles d'affaires (ex. « free to play »). Architecture logicielle d'un jeu vidéo : boucle de jeu (gameloop) et synchronisation du « frame rate », jetons, états, messages, événements, interface de contrôle utilisateurs, etc. Introduction au processus de développement dans l'industrie du jeu vidéo, usine de développement et initiation au processus de production itératif de type Agile/Scrum. Bibliothèques et langages utilisés en industrie (C++, C # et Blueprints). Introduction aux moteurs de jeux exploités en industrie (Unity 3D et UDK). Formation de base sur un moteur de jeu. Développement d'un premier prototype de jeu de A à Z.
Formule pédagogique : Magistral et/ou formation à distance
8INF964 Programmation avancée avec un moteur de jeu
Maîtriser l'exploitation des fonctionnalités avancées d'un moteur de jeu vidéo servant au développement multiplateformes en industrie. Développer des logiciels de jeux de grandes tailles avec des tâches réparties en équipe en exploitant un studio de conception logicielle, un système de gestion de version, et un moteur de jeu. Devenir autonome dans la réalisation de projet de développement de jeux vidéo multiplateformes en utilisant un moteur avancé.
Apprentissage de la structure de fonctionnement du moteur de jeu professionnel Unity 3D. Navigation dans l'interface du moteur. Exploitation de l'outil d'édition. Importation de ressources externes tels que des modèles 3D, des textures, des images et des sons. Développement avancée en C# avec Unity. Déplacement, interactions clavier-souris, contrôleur de personnages, engin physique, composition de scènes et éditions d'objets. Librairies spécifiques pour la création de jeux en 2D. Exploitation des casques de réalité virtuelle (ex. HTC Vive). Développement avec la réalité augmentée. Programmation avec une librairie pour créer du multijoueur réseau (ex. Photon Networking). Intelligence artificielle et apprentissage avec Unity. Utilisation de Microsoft Visual Studio avec Unity 3D. Utilisation d'un système professionnel de gestion de versions (ex. Perforce). Compilation et exportation sur différentes plateformes (ex. PC, Tablettes).
Préalable(s): (8INF960)
Formule pédagogique : Magistral et/ou formation à distance