Ma présentation > Présentation personelle > Mes projets >

Mes projets

Vous pouvez retrouvez ici une liste des projets que j'ai réalisés.

Vous pouvez retrouver certain de mes projets sur mon profil itch io


- RPG console -

Projet 1

Caractéristiques

  • Langage: c++
  • Thèmes abordés: mise en place algorithme simple, POO
  • Date: Été 2016
  • Etat: Terminé

Description

Ce fut mon premier projet portant sur l'informatique. Je voulais apprendre les bases de la programmation en partant du language c++. C'est en suivant le tutoriel fournit par OpenClassroom que j'en suis venu à cette idée:

Faire un petit jeu rpg sur console textuelle.

Screenshots

Début du combat du rpg Changement d'arme Fin du combat

- Jeu de noël -

Projet 2

Caractéristiques

  • Langage: Java modifié (processsing)
  • Thèmes abordés: gestion des collisions, architecture de base d'un jeu vidéo
  • Date: Noël 2016
  • Etat: Terminé

Description

Pour la spécialité ISN, nous avons du fournir un programme sur le thème de noël. Avec un camarade, Quentin Feuillade-Montixi nous avons décidé de travailler chacun sur un mini jeu que je regrouperais ensuite ensemble. Je me suis occupé du mini-jeu dans lequel le Père Noèl devais récupérer 5 cadeaux dans une aire de jeu plateforme.
Nous avons travaillé sur le logiciel processing qui permet de manipuler un language de programmation simplifié.

Screenshots

Accueil du jeu Départ du jeu Avancé du jeu

- Fermer la boite -

Projet 3

Caractéristiques

  • Langage: Java modifié (processsing)
  • Thèmes abordés: gestion des collisions, gestion des scores, gestion des joueurs
  • Date: Été 2017
  • Lien du jeu
  • Etat: Terminé

Description

Pour m'améliorer en programmation, j'ai voulu me lancer dans la retransciption d'un jeu de société que je trouvais pertinent à proposer en application.

Il se trouve que pour un même base de code, processing peut créer une application sur ordinateur ou sur mobile. Donc j'ai pu créer un application mobile avec ce projet.

Le projet est disponible pour les appareils sous windows et linux. Il est aussi disponible pour mobile sous forme d'un apk à installer

Screenshots

Accueil du jeu Mode 1 joueur Mode 2 joueur

- Demineur -

Projet 4

Caractéristiques

  • Langage: Java modifié (processsing)
  • Thèmes abordés: gestion des menus, POO
  • Date: Été 2017
  • Etat: Terminé

Description

Toujours pour m'amélioration, j'ai aussi voulu reprendre le demineur pour le recréer à ma sauce.

J'ai pu comprendre comment faire ce jeu de ce type et j'ai trouvé un moyen de faire une gestion des menus.

Screenshots

Accueil du jeu Menu Option Ecran du jeu Ecran de perte Ecran de réussite

- Roombook - TPE -

Projet 5

Caractéristiques

  • Langages: HTML5, CSS3, PHP, SQL
  • Thèmes abordés: gestion de comptes, de réservation, création d'un site internet
  • Date: Fin d'année 2017 - Printemps 2018
  • Site de démonstration
  • Etat: Terminé

Description

Pour la première, nous devions proposer un projet sur un thème abordant la science. Mon groupe fut composé d'Alexandre Boin, de Quentin Feuillade-Montixi et moi. Notre projet avait pour sujet la réservation de salle informatique et avait pour but d'améliorer celui déjà présent au Lycée, notre thème était donc l'informatique et le web. Avec ce projet, j'ai appris de nombreuses notions du web. J'ai compris le fonctionnement de bases de données et j'ai aussi travaillé et je me suis familiarisé à différents langages du web tel que l'html, le php, le css ou le SQL.

Screenshots

Accueil du site en arrivant pour la 1er fois Accueil du site normal Affichage du planning de reservation Liste des réservations personnelles Menu paramètres utilisateurs Menu déclaration d'un problème

- Growth v.1 - Jeu de plateformes -

Projet 6

Caractéristiques

  • Thèmes abordés: moteur de jeu, textures, textes, entités, menus, sauvegarde de zone de jeu
  • Date: Printemps 2018 - Été 2018
  • Présentation du projet
  • Etat: En pause

Description

Après le projet "Roombook" j'ai voulu changer de registre et j'ai voulu coder en vrai java et non plus manipuler le java simplifié proposé par processing que j'utilisais depuis plus d'un ans. Pour ce projet j'ai repris un des genres de jeu vidéo que j'affectionne particulièrement, le genre plateformer (type mario). Le projet étant trop ambitieux, je l'ai mis en suspend mais il a été riche en expériences. Je n'exclu pas de le continuer.

Grâce à ce projet j'ai pu maitriser java et j'ai pu commencer à aborder l'interface de programmation et de rendu graphique, "OpenGL". Pour finir, j'ai pu produire une base de code utile: un moteur basique de jeu vidéo qui comprenait une gestion de la fenêtre, un affichage des texture et du texte, une gestion de menu, des boutons pour l'interface utilisateur et un début de gestion d'entité indispensable pour un jeu avancé. Suite à ce projet et avec cette base de code, j'ai pu effectuer des tests et travailler rapidement utilisant cette base.

Screenshots

Accueil du jeu Menu des options Départ du jeu Intération avec un gland Intéraction avec le récupérateur de gland Retour après avoir déposé le gland

- Box Overflow - Jeu de reflexion -

Projet 7

Caractéristiques

  • Langages: Java
  • Thèmes abordés: création en temps limité, création d'enigmes, création d'espaces de jeu
  • Date: Été 2018
  • Lien du jeu

Description

Pendant l'été, j'ai pu participer à l'évènement Ludum Dare 42, avec mon camarade Quentin Feuillade-Montixi. Cet évenement consiste à produire un contenu multimédia (le plus souvent un jeu vidéo) sur un thème. Nous avions trois jours pour créer un jeu sur le thème "À cours d'espace" (Running out of Space).

De ce thème, nous avons voulu faire un jeu de reflexion où il fallait remplir des salles remplies d'obstacles. Pour programmer ce jeu, j'ai réutilisé la base de code et le moteur de jeu de base du projet précédent, Growth. Nous avons donc réussi au bout de ces trois jours à créer un jeu dont nous sommes fières.

Grâce à ce projet j'ai pu maitriser java et j'ai pu commencer à aborder l'interface de programmation et de rendu graphique, "OpenGL". Pour finir, j'ai pu produire une base de code utile: un moteur basique de jeu vidéo qui comprenait une gestion de la fenêtre, un affichage des texture et du texte, une gestion de menu, des boutons pour l'interface utilisateur et un début de gestion d'entité indispensable pour un jeu avancé. Suite à ce projet et avec cette base de code, j'ai pu effectuer des tests et travailler rapidement utilisant cette base.

Screenshots

Ecran d'accueil Menu Option Niveau 1 Début niveau 2 Niveau 13

- Tamalou Location -

Projet 8

Caractéristiques

  • Langages: HTML, CSS
  • Thèmes abordés: création d'un site
  • Date: Été 2018
  • Lien du site
  • Etat: Terminé

Description

Mes parents avaient besoin d'un site présentant notre maison mis en location et j'ai voulu revoir mes connaissances en html et sur le css. Je leur est donc créé et fourni un site hérbergé sur leur page personnel de notre compte free.

- Coop Dungeon Adventure -

Projet 9

Caractéristiques

  • Langages: Python
  • Thèmes abordés: moteur de jeu, création d'enigmes, map, entités
  • Date: Hivers - Printemps 2019
  • Lien du jeu
  • Etat: Terminé

Description

Pour la matière ISN, toujours en groupe avec Alexandre, nous avons réalisé un autre projet en informatique. Ayant déjà quelques idées, j'ai proposé sous forme d'un document Game Design and Development (GDD) un ensemble de régles et de caractèristiques définissant un jeu. Notre groupe fut composé d'Alexandre Boin (Developpeur), de Baptiste Aleci (Graphiste) et de moi-même (Developpeur), nous avons enrichi le document avant de le présenter, et il fut accepté.

Nous avons réalisé ce projet en 5 mois pendant nos temps libres et pendant les deux heures d'ISN prévues à cet effet. La démo qui a été réalisée n'a pas satisfait toutes nos attentes mais elle était déjà un très bon résultat, de plus certaines de nos attentes n'étaient pas réalisables.

Après avoir pris du recul, je suis satisfait de ce que nous avons produit. Nous avons bien pris le temps de coucher sur papier toutes nos idées et pris soin de planifier notre travail. Peut être n'avons nous pas encore assez réfléchi sur papier, car nous avons trouvé deux bugs inhérents à l'architecture du jeu, et qui ne sont résolvables quand refaisant le jeu et son moteur.

Screenshots

Ecran principal Entré dans le hall Début de la zone tutoriel Plus loin dans la zone

- Mighty Library v.1 -

Projet 10

Caractéristiques

  • Langages: Java
  • Thèmes abordés: création d'un moteur, 2D + 3D
  • Date: Été 2019 - Hivers 2019
  • Etat: En pause

Description

A la suite de la création de la démo du jeu Coop Dungeon Adventure j'ai voulu améliorer mon moteur, que je nomme maintenant librairie puisque ce n'est clairement pas un moteur complet comme d'autres l'ont fait (unity, unreal, etc ...). J'ai repris la librairie 2d que j'avait fait avant CDA et y ajouter toutes les nouveautés que j'ai ajoutées pour faire CDA.

Il faut savoir que j'avais aussi fait quelques tests pour manipuler de la 3d. J'ai donc fusionné les fonctionnalités des deux projets en un projet bien plus avancé en java qui pouvait afficher de la 2D et un 3D basique. J'ai continué le travail sur la librairie pour avoir plus de fonctionnalité sur la 3d. Je pouvais notamment charger des modèles 3D avec des informations sur les positions de "vertex" (point), de texture (ou couleur) et de normal. Je me suis arreté en cours de route sur l'implémentation des fonts en recopiant le système de centrage de CDA; car je manquais de temps en raison de la charge de travail et du temps de transport imposé par l'IUT.

Une autre raison m'a poussé à arreter, une raison plus technique. J'ai réalisé en rencontrant des personnes là où j'étudis (et je l'ai remarqué en programmant) que créer une librairie de jeu en Java n'est pas le meilleur des choix. Car le langage n'est pas très adapté pour ces buts, bien que certains jeu furent créés avec ce langage. Le Java souffre de son manque de fonctionnalités comme les pointeurs, de pointeurs de fonction, et bien d'autres choses qui rende Java plus lent que d'autres.

C'est pour ces raisons pour mes prochains projets, j'utiliserai la librairie d'une personne avec qui je fait équipe Antoine Guilbaud dit IronPowertga. Il n'est cependant pas impossible que je porte mon travail dans un autre langage comme le c# ou le c++, que j'utilise un autre support Graphique comme Vulkan au lieu d'OpenGl, ou que j'appréhende un des moteurs existants comme Unity ou Unreal.

Screenshots