The following warnings occurred: | ||||||||||||||||||||||||||||||
Warning [2] Undefined array key "logoutkey" - Line: 42 - File: global.php(1070) : eval()'d code PHP 8.2.24 (Linux)
|
[CONSEILS] Le projet de sup (par les anciens) - Printable Version +- EPITA 2018 (https://2018.epita.eu) +-- Forum: Informatique (https://2018.epita.eu/forumdisplay.php?fid=5) +--- Forum: Programmation (https://2018.epita.eu/forumdisplay.php?fid=17) +--- Thread: [CONSEILS] Le projet de sup (par les anciens) (/showthread.php?tid=105) Pages:
1
2
|
[CONSEILS] Le projet de sup (par les anciens) - Ares - 05-30-2013 Bonsoir. Je publie ce post qui est une version corrigée et complétée du post de Nass sur le forum des 2017. __________________________________________________________ Ce topic n'a pas pour but de vous donner la méthode infaillible pour réussir son projet de première année. Simplement donner des conseils de par notre expérience (et répondre aux questions) Récapitulatif : Pendant votre première année à l'EPITA, vous avez à réaliser un projet informatique en groupe. Ce sera votre principale source d'apprentissage en programmation, la note a plus haut coefficient en prog de l'année et votre plus grande source de plaisir/satisfaction si vous vous y mettez un peu. En gros : allez pas foirer ça, ça serait pas super malin. Le projet se déroule sur toute l'année Les équipes sont des groupes de 4 personnes Le projet est absolument libre (jeu vidéo ou autre) Vous devez remettre un cahier des charges décrivant ce que vous prévoyez de faire L'année est jalonnée de 4 soutenances orales, pendant lesquelles vous devrez présenter vos avancées. Pour chacune des soutenances, vous devrez remettre un rapport écrit fait en LaTeX. Pour l'ensemble du projet, vous devez avoir un site internet mettant à disposition les ressources Le projet doit être codé en Caml ou en C# Plusieurs bibliothèques graphiques sont utilisables (la plus utilisée est sans doute XNA, certains utilisent aussi DirectX, OpenGL, SDL, SFML, etc) La notation se base uniquement sur ce que vous montrez et vos rapports Conseils : /!\ Certains de ces conseils n'engagent que moi /!\ Formez un groupe avec des gens avec qui vous vous entendez bien, et motivés pour faire le projet. Sans ça, c'est l'échec assuré pendant les rush ou les périodes un peu tendues FAITES UN JEU ! C'est le seul moment dans votre scolarité (vie ?) ou vous en aurez l'occasion, profitez-en. C'est motivant, cela permet de créer du contenu simplement, et c'est une satisfaction de voir les autres jouer à son jeu. Investissez-vous ! Faites de la pub à et hors EPITA pour votre jeu, ça marche et c'est fun La compétition c'est bon. La guerre entre les bons groupes pour la meilleure note (dans une certaine limite hein, ne tuez personne), c'est sain et motivant ! Pour le choix de la 2D ou de la 3D, ça dépend déja des compétences des membres de votre groupe et de votre motivation. La 3D, c'est bien plus difficile, et bien plus long. Vous ne pourrez pas pomper tous les graphismes, donc il y aura aussi du boulot niveau modélisation et surtout animation 3D. Par contre c'est vraiment plus classe et le jury aime bien quand c'est bien fait. Par contre mieux vaut de la bonne 2D que de la 3D buggée et très moche. En dire moins et en faire plus plutôt qu'en dire trop et en faire pas assez. En gros, respectez votre cahier des charges, quitte à y mettre moins de choses et à les présenter en bonus, plutot que de ne pas respecter son contrat. Vendez votre jeu pendant les soutenances, l'oral est une part de l'examen (Le bullshit, c'est bien, mais avec modération) Lisez de la doc, partout, google est votre ami plus que jamais Essayez de bosser de temps en temps, pas seulement en rush (même si les rushs sont importants) <Areswar> Si vous choisissez la 3D Pour la 3D, vous avez plusieurs bibliothèques possible : - La bibliothèque la plus puissante, mais aussi la plus compliquée, DirectX (il y a aussi OpenGL qui est assez équivalent). Concrètement, certes c'est puissant, et ça a des possibilités infinies, mais vous perdrez un temps fou. Donc si vous êtes tous très forts ou que vous avez une motivation d'acier (attention, la motivation diminue souvent au cours de l'année), c'est un bon choix, mais pensez que vous devrez presque tout coder vous mêmes, du parser des fichiers 3D à la gestiond es animations et des collisions. DirectX étant une bibliothèque C++, vous devrez sans doute utiliser SlimDX ou SharpDX qui sont des portages pour le C# mais qui sont assez mal documentés. - XNA : Pour notre projet (Metastruggle), nous avons utilisé XNA. Ca a de gros avantages, notamment la gestion native des fichiers fbx (modèles 3D), ou la présence de nombreux outils pour simplifier la création d'un jeu de base. Si votre jeu met en action des sphères ou des cubes, vous n'aurez pas de problèmes pour les collisions, les BoundingSpheres et les BoundingBoxes étant directement incluses dans le framework. En revanche, si vous voulez faire des choses plus avancées, vous devrez recoder des parties du Content Pipeline, qui est assez sale et fermé, ce qui vous fera vivre l'enfer. Enfin, pour la gestion des animations, XNA est vraiment très mauvais. Le parser fbx d'origine est totalement incompatible avec les animations, ce qui vous obligera là aussi à recoder une partie du Content Pipeline. Petit conseil si vous choisissez cette bibliothèque du démon : installez XNA 4.0 Refresh, et pas XNA 4.0. La version Refresh ne gère pas les animations mais a au moins le mérite de ne pas vous empêcher délibérément de le faire - Mogre : D'après les échos que j'ai eus, le meilleur choix possible. Mogre est une implémentation C# du moteur Ogre. Vous avez les avantages de XNA, à savoir l'importation de fichiers 3D d'origine, et tous les outils, mais sans tous les inconvénients. Blender possède même un Plugin pour générer des fichiers optimisés pour Ogre. Le principal défaut est que Mogre est mal documenté, et que vous devrez donc lire la doc de Ogre, qui est faite pour le C++ (un peu le même problème qu'avec DirectX). Trappes : Passer 30 ans à afficher un cube en 3D tourbillonant,, c'est super, si c'est ce que vous voulez faire, mais franchement... Se concentrer uniquement sur des éléments sans rendu. Arriver en soutenance avec un moteur graphique qui tue mais sans aucune démo, ça va pas le faire... J'attends vos idées... ou que les miennes reviennent. Pour présenter votre site internet en soutenance : comptez par sur le WIFI. Murphy rôde... Exemples de projets : Nom : (mon projet) Metastruggle (Team Coconerds) Site : https://www.facebook.com/metastruggle / http://fr.metastruggle.eu Technos : C#/XNA 4.0 3D Description : EPITA 2017 - Un Super Smash Bros like avec un moteur 3D qui oppose les dieux de la mythologie grecque à des personnages de jeux-vidéos ou de films. Note : 18.5 : 3e de la promo 2017 Nom : 42 Days Later Site : http://www.alpha14.com/42dayslater/project.html Technos : C# (XNA ?) Description : Major de la promo 2016 Note : 20/20 Nom : Project: HGF (souvent appelé Fooo, d'ailleurs HGF veut dire Hard Gay Fooo!) Site : http://fooo.fr Technos : Delphi + Lua (scripts), OpenGL Description : EPITA 2012 Un jeu inspiré à la base de Warcraft III, au final il était presque jouable, même si le côté technique était beaucoup plus présente que le côté fun : on avait du réseau, un pathfinding potable (mais pas de gestion de collision pendant les déplacements), par contre on avait une map unique, etc. Note : 20.9/20 Nom : NANDCRAFT Site : https://bitbucket.org/halfr/nandcraft Techno : OCaml Promo : 2016 Description : Ordinateur virtuel composé d'un compilateur, un language intermediaire, un assembleur et un émulateur de CPU. Le langage à chacun des niveaux nous est propre. Note : 17.8 ( je crois) Nom : aMAZEing Escape Site : http://deitycrew.free.fr Technos : C# - Framework XNA 3.0 Description : EPITA 2014. Jeu en 3D à la 1ère personne dans lequel vous êtes dans un labyrinthe dont vous devez vous échapper pendant qu'un monstre essaie de vous tuer ou bien l'inverse, vous devez chasser la victime. Le monstre ou la victime ennemi sont une I.A, vous pouvez définir la taille du labyrinthe. De plus, il y a des pièges et des bonus/malus qui vous aiderons à/empêcherons de réaliser votre objectif. Note : 19.5 à la dernière soutenance. Nom : DestruXion Site : http://mogmi.fr/destruxion (Down) Technos : Delphi/SDL Description : EPITA 2013 (Projet de Mogmi). Un Worms-like avec plein d'armes et chargement de maps depuis des images. Note : 19+/20 Nom : Clor Project Site : http://clor-project.eu (Down) Technos : C# - Framework XNA 3.0 Description : EPITA 2015. Jeu de stratégie en temps réel fortement inspiré de Age Of Empires en 2D-Isométrique. Techniquement injouable, réseau qui marche (presque) pas. Par contre, contenu en ligne, système de liste d'amis et un éditeur de carte. Note : 18/20 Nom : V0rTeX Site : http://V0rTeX.fr (Down) Mirror ici : http://cijay.fr/v0rtex.fr/ Regardez la partie Téléchargement. Vraiment. J'ai fait les rapports en pensant qu'ils pourraient servir de guide aux futurs sups : VOUS, tout est expliqué de A à Z, de façon pédagogique (dans mes parties tout du moins), j'ai vraiment soigné cet aspect Technos : C# - SlimDX (wrapper DirectX, parce que XNA c'est pour les faibles) Description : On voulait faire un Portal-like. Nom : Dokan Protocol Site : http://www.dokanprotocol.com (Down) Technos : C# - Framework XNA 4.0 Description : EPITA 2015. Jeu en 3D (+ stéréoscopie, vous pouvez tester si vous avez des lunettes avec filtres vert-cyan), inspiré de Bomberman. Le but reste de poser des bombes et de vaincre une IA plutôt douée (un peu trop --'). Des bonus s'ajoutent. Possibilité de créer un compte joueur, avec un panier, des sousous pour acheter des nouveaux items dans le Dokan Store, un panel de niveaux dans différents univers, et plein de trucs kikoos... Note : 18.62/20 Nom : Yello Killer Site : http://www.yellokiller.com (Down) Technos : C# - XNA Promo : EPITA 2015 Description : Jeu d'infiltration en 2D type RPG-16bits vue de dessus, style les premiers metal gear. Le but est de s'infiltrer dans une base plein d'ennemis et d'assassiner tout les boss de la map sans se faire repérer, donc IA assez forte. Un editeur de map vraiment trés complet s'ajoute au menu principale pour laissé au joueur la possibilité d'étendre toute son imagination à travers Yello Killer. Note : 18.6/20 (balancez vos sites de projets avec description et notes, ça serait cool) Si j'ai oublié des éléments, signalez et je rajoute. En espérant que cela vous aide. __________________________________________________________ Commentaire de Nass : Ça c’était pour le quote des conseils. Maintenant à mon avis vous devriez essayer d’autres choses que les jeux vidéos car vous avez quand même le libre choix ce qui vous offre une infinité de possibilités. Vous aurez le choix entre le C# et l’OCaml. Si vous ne voulez pas faire du graphique, je vous recommande l’OCaml qui est un language super cool au fond car il laisse pas mal de liberté malgré le typage. De plus, les professeurs ne notent pas la difficulté de votre projet mais la façon de le vendre en soutenance. Vous pouvez coder windows pour la première soutenance, des gens qui bullshit bien sur leur jeu de tetris auront une meilleure note que vous. Sachez qu’au final, tout le monde a au dessus de 15-16 et qu’il y a beaucoup de random. (des groupes qui ont montré moins à la seconde qu’à la première soutenance sont passé de 17 et quelques à major vers les 19.3) C’est la raison pour laquelle il faut coder pour vous et votre plaisir, c’est une très bonne raison de passer toutes ses soirées en SM à travailler et de se faire des petites nuits blanches de prog chaque semaine. Vous avez une année avec énormément de temps libre donc utilisez-le pour la programmation d’un projet ardu. ps: Si vous avez des questions, join #epita ou #epita-sup sur irc.rezosup.org. On vous répondra du mieux que l’on peut. Bonne chance ! RE: [CONSEILS] Le projet de sup (par les anciens) - Bruce - 05-30-2013 Mon avis : Avec ce projet quoique vous fassiez vous apprendrez des choses, maintenant ne vous limitez pas à un jeu en 2D, vous aurez vite fait le tour. Ensuite je pense que comme l'a dit nass, ne vous limitez pas aux jeux vidéos, avec un projet un peu technique vous avez moyen d'appendre beaucoup beaucoup plus . Mais si vous désirez faire un jeu n'hésitez pas à vous tourner vers la 3D, il y a moyen de faire des trucs assez sympas avec Directx, Mogre etc.. Ensuite soyez organisés et ayez une idée _précise_ de ce que vous voulez, idéalement trouvez vous un groupe rapidement histoire de pouvoir commencer à travailler rapidement (officiellement le projet commence en décembre, mais commencer en novembre pourra vous aider à appréhender la difficulté que peut indure votre projet). Beaucoup vous diront que le bullshit marche en soutenance mais en fait c'est quelque chose à éviter (de un parce que si vous êtes très mauvais en barratin ça se verra tout de suite et de deux parce que bullshiter c'est naze). Et gardez en tête que vous n'en n'avez rien a faire de la note, votre 15 vous l'aurez si vous bossez assidûment, d'autres groupes auront 18, 19 voire même 20 ben osef. En résumé : faites ce qui vous plait, mais ne vous limitez pas aux suggestions de Krisboul. Ah et sinon mon projet : Nom : Process Crash (La Marque Jaune) Site : http://processcrash.wordpress.com/ Technos : C# / XNA Promo : EPITA 2017 Description : Un rayman like en 2D ou le principe est que vous êtes un virus qui doit contaminer un ordinateur. Note (sans la quatrième soutenance) : 15.13 Les liens vers les éxécutables arriveront plus tard, le temps de retrouver tout ça. RE: [CONSEILS] Le projet de sup (par les anciens) - Ares - 05-30-2013 (05-30-2013, 23:40:23)Bruce Wrote: Site : http://processcrash.wordpress.com/ Mes yeux ! RE: [CONSEILS] Le projet de sup (par les anciens) - Bruce - 05-30-2013 (05-30-2013, 23:43:34)Ares Wrote:Ben si tu veux j'avais fais un truc sans aucune mise en forme avec Django et j'avais genre clairement la flemme de le terminer donc on a conservé le wordpress(05-30-2013, 23:40:23)Bruce Wrote: Site : http://processcrash.wordpress.com/ RE: [CONSEILS] Le projet de sup (par les anciens) - reynova - 05-31-2013 Osef du site ! L'intérêt c'est de coder un bon projet, pas de se masturber sur du web. (05-30-2013, 23:14:28)Ares Wrote: Je publie ce post qui est une version corrigée et complétée du post de Nass sur le forum des 2017. Qui est lui même une reprise du message de mogmi sur le forum 2016. C'est beau ! :') projet qui rox du poney : http://dust.epimeros.org/ RE: [CONSEILS] Le projet de sup (par les anciens) - Dettorer - 05-31-2013 (05-30-2013, 23:14:28)Ares Wrote: Commentaire de Nass : Ça résume très bien le concept de ce projet. Juste, renseignez-vous un peu et demandez conseil sur les langages pour savoir lequel est le mieux adapté pour votre projet. En C# il y a de grande chance que vous ne compreniez pas une certaine partie de ce que vous faite et Visual Studio codera pas mal pour vous. L'OCaml est très cool pour faire plein de choses intéressantes et drôles mais si vous voulez faire, par exemple, un jeu vidéo, préférez le C#. Faite quelque chose qui vous plait, (en plus ce sera facile à vendre en soutenance). RE: [CONSEILS] Le projet de sup (par les anciens) - Neodyblue - 06-19-2013 Visual Studio ne codera pas grand chose, Resharper codera pour vous RE: [CONSEILS] Le projet de sup (par les anciens) - Arys - 06-19-2013 (05-30-2013, 23:14:28)Ares Wrote: - Mogre : D'après les échos que j'ai eus, le meilleur choix possible. Mogre est une implémentation C# du moteur Ogre. Vous avez les avantages de XNA, à savoir l'importation de fichiers 3D d'origine, et tous les outils, mais sans tous les inconvénients. Blender possède même un Plugin pour générer des fichiers optimisés pour Ogre. Le principal défaut est que Mogre est mal documenté, et que vous devrez donc lire la doc de Ogre, qui est faite pour le C++ (un peu le même problème qu'avec DirectX). quelque remarques. déjà, mogre c'est facile, très facile et haut niveau, a reserver a des jeux 3D avec derière un concept qui complique la chose par ce que sinon c'est très facile. le seul projet sous mogre cette année c'est un minecraft like. ensuite vortex, évitez slimDX regardez du coté de sharpDX c'est plus récent et plus a jour, toujours aussi mal documenté par contre. nous, avons utiliser sharp dx, on a fait un slender like RE: [CONSEILS] Le projet de sup (par les anciens) - snooze92 - 06-19-2013 (05-30-2013, 23:14:28)Ares Wrote: Nom : DestruXion Oh genre, comment il s'est trop approprié le projet pour lui tout seul ! PM héberge sa version du site je crois... pas sur de l'URL par contre ! Je suis bien d'accord avec tous ces conseils. Ci-dessous ma version, avec la plupart qui se retrouve dans les idées déjà présentées...
A propos des soutenances, si c'est toujours autorisé d'aller en soutenance, allez voir plusieurs soutenances d'autres groupes. C'est pas seulement marrant de voir ses potes en soutenances, c'est aussi intéressant de voir où ils en sont, comment ils présentent, et ce que le jury a l'air d'en penser. Surtout pour la première soutenance, c'est incroyable les leçons que l'on peut tirer en allant à 3-4 soutenances en début de semaine, surtout si vous passez en fin de semaine. Avec DestruXion, notre première soutenance était la toute dernière de toute la semaine... du coup comme on rushais à VJ, on est allé à un ou deux soutenances chaque jour et le vendredi soir on savait exactement ce qu'on devait faire ou ne pas faire. Par exemple, ça sert à rien de demander au jury s'il veulent essayer votre jeu... Je pourrais passer plus de temps à déballer mon expérience, mais je pense que l'expérience de promos plus récentes est plus intéressante pour vous. Aussi, n'oubliez pas qu'il est possible d'organiser un stand EPITA au Festival du Jeu Vidéo. C'est le projet Foooo qui avait commencé, et j'avais continué cet effort l'année suivante. RE: [CONSEILS] Le projet de sup (par les anciens) - Levak - 06-19-2013 Mon conseil : Faites gaffe à bien choisir votre groupe. Les "potos" et les "visionnaires", c'est cool 5 minutes, mais à condition qu'ils apportent vraiment quelque chose au projet (attention à mon ancien groupe de SUP qui pourrait me lire en différé, ici j'extrapole). C'est primordial de bien s'entendre avec les membres de son groupe, mais faites quand même gaffe à regarder s'ils sont sérieux, impliqués et savent coder|sont graphistes dans l'air. Je vous assure que ça fait mal au moral de se retrouver seul à coder et 4 à présenter le projet à la dernière soutenance. |