Informatique Langage C
Section outline
-
-
1. But du projet jeu video
Vous allez travailler sur la programmation graphique en C multiplateforme avec la bibliothèque CSFML qui est un portage de la bibliothèque de fonctions C++ SFML. Le but de ce projet est de vous amener à créer un petit jeu vidéo de type pong, démineur, space invader,... via des exercices de prise en main des différentes technologies disponibles : gestion du clavier, souris, joystick, affichage de formes (rectangles, rond), de textes, l'utilisation de son mais aussi l'affichage d'images et d'animations graphiques. Chaque exercice pris séparément reste assez simple à réaliser, des vidéos vous explique ce que l'on souhaite faire et des éléments de cours vous permettent de comprendre et de progresser tout au long des 5 parties proposées. Voici le détail des 5 parties de ce projet.
Partie 1 : premier projet CSFML avec déplacement d'un rectangle
Vous allez créer votre première application graphique, ajouter votre première forme (un rectangle), puis déplacer avec les flèches ce rectangle pour terminer sur le blocage de ce rectangle à l'intérieur de votre fenêtre graphique. Ce rectangle sera notre raquette pour le jeu pong.
Remarque : pour chaque partie, vous pouvez si vous avez terminé les 14 chapitres du cours, découper ce premier projet en fonctions et structure et choisir de travailler "comme les pros" en programmation modulaire (c'est l'objet du point 4.travail avec les fonctions).

Partie 2 : Projets utilisant un rond et déplacement de ce rond
Vous allez tout d'abord créer une nouvelle forme (un rond) puis déplacer ce rond (une balle) sur l'axe X de droite vers la gauche puis de gauche vers la droite(rebond sur les bords).

Partie 3 : Projet utilisant du texte et le son
Vous allez ajouter du texte et le son lorsque la balle rebondit sur les bords.

Partie 4 : Gestion des collision entre formes
Dans cette partie vous allez apprendre à détecter les collisions entre 2 formes (ici le rectangle et le rond) et la balle va maintenant rebondir sur la raquette (rectangle). Le jeu de pong se concrétise. Vous ajouterez le score à chaque fois que la raquette ne renvoie pas la balle.

Partie 5 : l'affichage des images et animations
Dans cette partie vous allez apprendre ce qu'est une texture, un sprite, comment afficher des images, créer des rotations de ces images, utiliser des fichiers intégrant plusieurs images et permettant de générer une animation (pièce qui bouge et personnage animé). Dans cette dernière parti on prépare les éléments pour travailler sur le démineur ou bien le jeu space invader.
Remarque : avec cette dernière partie, vous aurez appris tous les éléments utiles à la création d'un jeu vidéo et vous serez alors capable aprés avoir organisé votre code de façon modulaire (comme expliqué dans les parties 1, 2, 3 et 4) de créer votre propre jeu.

-
2. Organisation du projet jeu video
Il y a 2 phases dans le projet jeu vidéo :
- phase 1 : travail sur les exercices (voir travail à faire pour chaque partie) et une fois validé placement du fichier main.c sur la boite de dépot (à faire seul)
- phase 2 : travail sur le projet de jeu vidéo (travail en binome)
Pour les étudiants les plus avancés, vous devriez pouvoir travailler sur votre propre jeu vidéo seul ou à 2. Discutez-en avec votre enseignant de TP.
-
3. Evaluation du projet
Ce projet est divisé en 2 phases :
- la phase 1 découpée en 5 parties permet la prise en main des éléments nécessaires à la création d'un jeu vidéo (notée sur 15 points), cette note est liée aux différents travaux à réalisés qui sont définis dans les 5 parties du projet jeu video (2 points pour les éléments de preuve à placer sur la boite de dépot ou à montrer à votre enseignant de TP et 1 point si vous avez programmer chaque partie en utilisant la programmation modulaire comme demandée).
- La phase 2 à faire en binome ou seul consiste à créer votre propre jeu vidéo (notée sur 15 points). Cette note sera attribuée par votre enseignant de TP selon les critères donnés dans le tableau phase 2
phase 1
partie 1
partie 2
partie 3
partie 4
partie 5
programme fait (note /10)
/2 /2 /2 /2 /2 programme modulaire
(note /5)
/1 /1 /1 /1 /1 Phase 2
Critères d'évaluation projet
Elements d'évaluation
Intégration des éléments vues dans les 5 parties (note sur 5) intégration dans le projet des différents éléments vu dans les 5 parties : texte, son, rectangle, rond, animations programmation modulaire (note /5) le projet est découpé en différents fichiers, utilisation des structures Visuel du jeu (note /5) Le jeu est compréhensible pour l'utilisateur et propose un visuel agréable Complexité du jeu (note /5) Le jeu intègre la gestion des niveaux, des scores, le choix des personnages,... -
4. Votre projet
C'est à vous de choisir le jeu que vous voulez développer. Voici quelques exemples de jeux :
4.1. le jeu de pong
Le jeu de pong avec soit un jeu avec les touches pour chaque joueur, soit un joueur contre le programme. A chaque rebond la balle rebondit de façon aléatoire et accélère au fur et a mesure des rebonds. On trouve le calcul du score et un bouton play qui permet de mettre en pause le jeu ou de le reprendre.

4.2 le casse brique
Le casse brique est un jeu qui à la différence du pong vous demande de créer une matrice de rectangle et de gérer les collisions (effacement du rectangle touché) comme vu au 4_a_collision.

4.3 space invader
Vous avez déjà votre vaisseau, il suffit de créer des rangées de vaisseau adverse et de détecter les collisions, toujours en travaillant avec des matrices.

4.4 Mario
Dans ce jeu vous avez un personnage qu'il faut animer, c'est ce que nous avons vu au chapitre 5_c_animation.
Et bien d'autres jeux à réaliser...
Vous avez le choix, à vous de jouer.
-