Unity Polytech

Si vous aimez l’univers du jeu vidéo, ainsi que l’univers 3D et que vous souhaitez découvrir Polytech Angers, alors vous êtes tombé au bon endroit !

  • Introduction
  • Nous sommes trois étudiants en deuxième année de cycle préparatoire à Polytech Angers (FERRON Yves, PIERRE Enzo, DOYEN Maxime). Nous allons vous partager notre fabuleuse expérience notre projet de conception en seconde année ! Notre projet est inédit cette année, nous n’avions donc aucune trame de départ. Il consiste à réaliser une visite virtuelle de Polytech Angers afin que le joueur puisse se déplacer dans l’école à distance. Evidemment pour mener à bien ce projet, nous avons eu recours à des logiciels spécifiques : d’une part Unity et d’autre part Visual Studio.

    Quels sont ces logiciels ?

    Unity est un logiciel de conception 3D, on y trouve des centaines d’outils permettant de créer de multiples univers 2D ou 3D. C’est d’ailleurs avec ce logiciel que bon nombre de jeux vidéo sont réalisés. Quant à Visual Studio est un logiciel de programmation, dans notre cas il permet la création de script servant à effectuer des actions/mouvements liés à Unity (Par exemple l’ouverture d’une porte ou encore le passage d’un étage à l’autre). Avec l’utilisation de ces deux logiciels, nous avons pu créer Polytech Angers virtuellement.

  • Déroulement du projet

  • La modélisation 3D

    Dans un premier temps, il nous a fallu reconstruire la structure principale du bâtiment, pour ce faire nous avons repris les plans de Polytech Angers afin de copier au mieux l’école. Cela a commencé par les murs, puis les fenêtres et enfin les textures. Une fois fait, il nous a fallu remplir l’intérieur de ces murs par de la décoration. Les tables, chaises, claviers et écrans que nous avons créé, ont formé des bureaux. Nous avons placé ces derniers pour faire nos salles. Enfin, ne voulant pas rester enfermé, nous avons conçu un terrain représentant la rue adjacente.

    EvolutionBatiment


    Animation et Interaction

    Après avoir bien avancé la modélisation, nous sommes passés à l’animation du joueur et à l’interaction. Afin de déplacer le joueur nous avons utilisé Visual Studio avec du C# (langage de programmation), pour faciliter l’implémentation du joueur dans la scène nous utilisons le “character controller” qui est un composant préconfiguré sur Unity, ce qui facilite grandement les réactions qu’à le joueur face à des marches notamment. Voulant que la visite soit interactive, nous avons ajouté une animation sur les portes; pour ce faire nous utilisons des animations en plus d’un programme, toujours en C#, qui vont nous permettre d’avoir un mouvement fluide sur l’ouverture et la fermeture des portes.


    Menu

    Enfin, pour un rendu général plus propre nous avons pensé à créer un menu. Celui-ci permettra au joueur de comprendre comment se déplacer et interagir durant la visite, ainsi que de paramétrer les sensibilités de vitesses de rotation et de déplacement. En jeu, cela permet aussi de mettre la visite en pause; avant la création de ce menu le curseur continuait d’être traqué par le programme de rotation de la caméra du joueur même lorsque celui-ci ne le voulait pas, ce qui avait pour conséquence placer l’utilisateur dans une position assez peu confortable (caméra visant le sol ou le ciel par exemple).

  • Difficultés éprouvées
  • L’un des aspects les plus compliqués a été le changement d’étage dans le bâtiment. Pour des soucis d’optimisation nous avons opté pour que chaque étage constitue une scène différente (une scène peut être considérée comme un niveau dans un jeu vidéo), l’école ayant plusieurs escaliers il est possible d’apparaître à plusieurs endroits différents. Cependant lorsque Unity charge une nouvelle scène (le prochain étage en l’occurrence), il supprime toutes données de l’étage précédent, ce qui a pour conséquence que l’on ne sait plus quel escalier a pris le joueur.
    Le second souci, plus handicapant, est le nombre d’images par seconde (processus agissant sur la fluidité de l’image). En effet pour chaque étage nous avons modélisé toutes les salles qui le composent ce qui a eu pour conséquences de rajouter de nombreux objets. Tous ces objets demandent beaucoup de ressources à l’ordinateur, ce qui a créé des moments où l’ordinateur ne supportait pas le nombre trop important d’objets à afficher.

  • Conclusion
  • Nous avons pris un réel plaisir à mener à bien ce projet, malgré le nombre conséquent d’heures de travail que nous avons dû fournir pour cela. Nous n’avons éprouvé aucune marque de lassitude bien au contraire, en voyant le projet se dessiner au fil des jours, nous avons été de plus en plus motivés à le mener à terme. Grâce à ce projet, nous avons donc appris à manipuler deux nouveaux logiciels, appris à travailler en équipe à se partager la charge de travail. Enfin, ce projet a été fructueux a constitué une source de développement personnel pour chacun d’entre nous.

    comparaison de notre travail avec le bâtiment réel :
    Comparaison Reel_Unity

    Merci d’avoir pris le temps de lire notre article.