Voici le récit de la dernière édition de notre journée innovation. Pour rappel une journée tous les deux mois est dédiée à l’innovation chez Frianbiz. Chacun de nous réfléchit à une techno / un projet / concept sur lequel il souhaite travailler pendant cette journée. A 17h tout le monde s’arrête. On se retrouve tous dans les canapés. Chaque équipe présente son projet. La journée se termine autour de quelques bières.
Frianmings, ou comment s’appuyer sur un vieux «Classic» pour étudier le leveldesign, le gameplay, les navmeshs dans Unity3d.
Petit bonus : Stockage des scores via une API sur NodeJs avec Express :-)
Le but de notre projet était de créer un serveur permettant la mise à jour d’un planning en temps réel depuis une interface en VueJS (projet développé par Benjamin et Loïc en parallèle). Pour structurer notre code nous avons choisi de faire un serveur NodeJS en Typescript, nous permettant d’avoir des classes et des variables typées plus proches des langages orientés objets classiques. Pour les sockets nous avons utilisé socket.io. Nous avions hésité avec express pour créer une API REST classique mais pour une meilleure expérience utilisateur (le planning se met à jour en temps réel pour tous les utilisateurs connectés), nous avons choisi d’utiliser les sockets avec socket.io. Très simple d’utilisation, la prise en main pour Arthur a été rapide. Cela a aussi simplifié le développement sur le projet VueJS, la librairie socket.io-client étant tout aussi simple d’utilisation, la seule difficulté étant de s’habituer à une nouvelle façon de penser les interactions client/serveur de manière évènementielle.
Pour conclure, les sockets via socket.io sont très simples et agréables d’utilisations.
Afin de communiquer avec le serveur Node.js mis en place par Guillaume et Arthur, Nous avons utilisé Vue.js dans sa version typescript, en suivant la documentation officielle (via Vue CLI), et Tailwind CSS pour le design.
L’objectif était d’avoir les fonctionnalités suivantes :
Le mise en place du projet s’est faite rapidement. En effet, grâce à la documentation claire, à l’utilisation de typescript et au data-binding, l’affichage des développeurs, des projets et du calendrier (uniquement le mois de janvier) étaient disponibles dès la fin de la matinée. L’après midi était consacrée à l’utilisation des sockets Node.js dans le but d’assigner des projets aux journées du calendrier et de synchroniser les données en temps réel pour toute l’équipe.
À la fin de la journée, le projet était exploitable et l’assignation d’un projet à un développeur pour une journée précise était possible. Le projet utilisant les sockets mis en place par le serveur, les modifications en temps réel des autres développeurs étaient visibles.
Après avoir travaillé sur le serveur Node.js, Guillaume a appliqué une couche graphique à l’application afin d’avoir une interface agréable et simple à utiliser.
Premiers pas dans l’univers de l’animation 3D et de son utilisation dans des jeux. Nous avons pu créé un modèle humain simplifié de A à Z sur Blender, allant de la création du corps jusqu’à l’animation du personnage, en passant par la création du squelette permettant son articulation, pour ensuite l’intégrer dans un projet Unity afin de mettre en oeuvre nos animations précédemment fabriquées. Grâce à l’expérience acquise au cours de la matinée, nous avons eu l’occasion de démarrer en fin de journée la modélisation d’un château-fort qui s’annonce prometteur. (Démo)