0963

Programme court de deuxième cycle en développement de jeux vidéo

Responsable : Bob-Antoine Jerry Ménélas
Regroupement de programmes : Programmes d'études de cycles supérieurs en informatique
Secrétariat : (418) 545-5011, poste 2901
Coordonnatrice : Justine Lévesque
Coordonnatrice : Stéphanie Girard
Adresse électronique : spcs_informatique@uqac.ca
Grade :

Présentation du programme

Le Programme court de 2e cycle en développement de jeux vidéo est la suite du Microprogramme de 2e cycle en développement de jeux vidéo. Il intègre le cheminement de celui-ci en plus de deux cours supplémentaires.

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.

Objectif

Ce programme permet de développer des compétences avancées en développement de jeux vidéo, de la programmation jusqu'à la gestion de projet itératif, dans un contexte où l'on exploite un écosystème d'outils professionnels.

Objectifs spécifiques

De façon plus spécifique, le programme permet :

Conditions d'admission

Base Études universitaires

Base Préparation suffisante

Note:

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.

(1)Le dossier de candidature comprend :

Contingentement

Ce programme n'est pas contingenté.

Règles administratives

L'admission au programme se fait aux trimestres d'automne et d'hiver.

Le programme d'études est offert à temps partiel* seulement.

*Les programmes d'une durée de moins de trois mois ainsi que les programmes offerts uniquement à temps partiel ne sont pas reconnus pour l'attribution de prêts et de bourses.

Règlements pédagogiques particuliers

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.

Perspectives professionnelles

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.

Structure du programme

Ce programme comprend 5 cours (15 crédits)

Plan de formation

Cinq cours obligatoires (quinze crédits)

8INF862Gestion de projets informatiques
8INF865Programmation de plateformes mobiles
8INF960Principes de conception et de développement de jeux vidéo
8INF962Atelier pratique en jeux vidéo I
8INF964Programmation avancée avec un moteur de jeu (8INF960)

DESCRIPTION DES COURS

8INF862 Gestion de projets informatiques

Apprendre à gérer des projets de développement en informatique et en jeu vidéo. Maîtriser les principes et les pratiques actuelles de la gestion de projets, et ce, tant avec les approches de gestion dites prédictives qu'avec les méthodes de gestion dites adaptatives.

Planification de projet avec approche prédictive de gestion de projets. Structure et découpe de projet (WBS). Estimation des coûts à l'aide d'approches basées sur l'historique ainsi qu'avec des méthodes s'appuyant sur le consensus d'experts. Optimisation des ressources. Gestion de risques. Assurance de la qualité et du suivi du projet. Gestion du changement, résistance aux changements et gestion des conflits. Gestion d'une équipe. Planification de projet avec approche adaptative de gestion de projets. Artéfacts du Scrum (Incrément, Backlog de produit, Backlog de Sprint). Rôles et responsabilités des différents acteurs (Scrum Master, Development Team, Product Owner). Événements du processus Scrum. Processus d'inspection et d'adaptation. Découpe de projet par histoires utilisateurs. Estimation des histoires utilisateurs avec méthode du Planning Poker (point d'histoire et vélocité). Logiciels utilisés en entreprise pour la gestion de projets. Enjeux de la gestion de projets avec des équipes virtuelles en télétravail.

Formule pédagogique : Magistral et/ou formation à distance

(01/2024)

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

(01/2024)

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

(01/2024)

8INF962 Atelier pratique en jeux vidéo I

Permettre de faire la synthèse des connaissances acquises dans les cours du programme. Développer ses connaissances et ses habiletés par sa participation au développement d'un projet informatique appliqué au domaine du jeu vidéo. Participer au développement complet d'un prototype de jeu vidéo de moyenne à grande envergure à l'intérieur d'une équipe de bonne taille en suivant les pratiques de l'industrie.

Activité d'intégration des connaissances. Formation d'équipes de travail. Rappel des principes de développement de projets informatiques. Développement d'un prototype fonctionnel. Utilisation d'outils technologiques spécialisés (moteurs, librairies, outils de gestion, etc.). Mise en pratique concrète des compétences en gestion de projets Agile/Scrum dans un contexte de développement de projet sur un trimestre entier en équipe de 4 à 6 personnes (équipe virtuelle délocalisée). Exploitation de l'ensemble des outils logiciels de communication à distance, de partage de code source et de version, de « bug tracking » et de gestion de projet en ligne. Assemblage d'un portfolio de réalisation (l'ensemble des prototypes développés au fil des 5 cours, et notamment le jeu développé sur un trimestre en grande équipe).

Formule pédagogique : Atelier

(01/2024)

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

(01/2024)