

Oneshot 3D

Application de réalité augmentée pour les professionnels de l'aménagement extérieur, Pointcube 2013-2014
Oneshot 3D est un configurateur d'espaces en 3D temps réel pour les professionnels de l'aménagement développé par la société lyonnaise Pointcube. Il permet la création de montages photo réalistes pour projeter en quelques minutes le client dans ses futurs aménagements. L'application est utilisable en magasin sur PC ou directement sur le lieu de vente grâce à la version tablette.
J'ai effectué à Pointcube un stage de 5 mois en tant qu'assistant ingénieur et développeur. J'ai principalement travaillé au portage de Oneshot 3D et HostAGhost sur plateformes Android, au développement de nouvelles fonctionnalités pour Oneshot et au projet Moov3D sur prototype à camera stéréoscopique.
Développement de Oneshot 3D :

- Meilleur fonctionnement de l'application sur tablettes Android, développement d'un plugin java afin de faire appel aux fonctions natives du périphérique depuis Unity
- Gestion de l'écran tactile multitouch pour Windows
- Export de plans au format pdf
- Création de plages 3D à forme dessinée par l'utilisateur
- Définition de Oneshot comme application native pour ouvrir les fichiers os3D sur toutes les plateformes (Windows, OSX, Android, iOS)
- Création de murets personnalisables
Pour plus d'informations : Oneshot3D sur le site de Pointcube

HostAGhost

Application de réalité augmentée effrayante, Pointcube, octobre 2013
HostAGhost permet de peupler les photos prises par votre smartphone ou votre tablette de zombies, sorcières, monstres, tombeaux et encore pleins d'autres choses terrifiantes.
Application développée pour Halloween par la société Pointcube, disponible sur Android et iOS.
HostAGhost est développé avec Unity3D et est basé sur une version
simplifiée de Oneshot avec la particularité
d'être adaptée aux smartphones. J'ai principalement
travaillé sur la version Android de HostAGhost et
à ce qu'elle s'exécute correctement sur tous les
périphériques Android présents dans
l'entreprise :
- Adaptation à toute taille d’écran et densité de pixels
- Possibilité de partager ses créations HostAGhost sur Facebook, Twitter et les autres applications Android prenant en charge les images
- Prise en charge des vieux smartphones comme des plus récents
- Bon fonctionnement de la prise en charge de l’appareil photo
- Importation d'images depuis la galerie de l'utilisateur
- Création d'une grille 3D ajustable au doigt si le manque de gyroscope ou la méconnaissance de focale ne permettent pas de l'adapter automatiquement.


Moov3D

Moov3D, développement sur prototype avec caméra stéréoscopique et réalité augmentée en temps réel, Pointcube, septembre 2013
Moov3D est un projet de réalité augmenté avec capture d’image stéréoscopique supporté par plusieurs acteurs : CEA Grenoble, Grenoble INP, Microoled, Pointcube, ST Ericsson et Visioglobe. Ce projet perçoit aussi des subventions du gouvernement, celui-ci encourageant la recherche française dans des domaines novateurs.
Le prototype, développé par ST Ericsson, est un téléphone Android doté de 2 caméras parallèles. Moov3D fonctionne grâce à une librairie développée par des chercheurs Grenoblois qui permet d'obtenir des informations à propos de l'espace en temps réel à partir des images captées par les caméras. J'ai participé au développement, au sein de Pointcube, d'une application permettant l’ajout d’objets 3D réalistes intégrés dans une vidéo : une sorte de Oneshot mais fonctionnant avec un flux vidéo plutôt qu’avec une image de fond statique
L'application est développée en Java, grâce au moteur 3D open source JMonkeyEngine.
Fonctionnalités développées pour l'application Moov3D :
- Ajout de plusieurs objets
- Rotation et redimensionnement des objets
- Possibilité de sélectionner les objets déjà placés afin de les modifier
- Personnalisation de chaque objet en laissant l’utilisateur changer sa texture
- Lampe qui éclaire le sol, pouvant être allumée pu éteinte
- Possibilité d’afficher une grille et un repère au niveau du sol
Pour plus d'informations : Moov3D sur le site du GIBSA-lab
Site Leadergame
Le nouveau site de Leadergame vient en remplacement de l'ancien site réalisé avec des technologies vieillissantes (Cariboost). Il intègre aussi les plateformes web des serious games de l'entreprise. Réalisé avec Wordpress, son contenu est facilement modifiable et adapté aux mobiles.
Pendant mon stage de fin d'études à Leadergame, il m’incombait la responsabilité des choix technique et la réalisation concrète des demandes clients :
- Création du nouveau site Web de Leadergame avec le CMS Wordpress
- Réorganisation, amélioration et intégration dans Wordpress des plateformes web des serious games de l'entreprise.
- Amélioration de la sécurité des différentes plateformes
- Tests et correctif de modules d'e-learning Articulate Storyline
Learn2Lead
Learn2Lead est un serious game sur le leadership développé par Leadergame. Créé avec Unity, l'application est jouable depuis un navigateur, les résultats détaillés des joueurs et un classement sont disponible au sein de la plateforme Web.
Pendant mon stage à Leadergame, j'ai apporté les amélioration suivantes à Learn2Lead :
- Mise en place d'une version Webgl, afin de se passer du plugin Webplayer Unity
- Centralisation et refactorisation des différentes plateformes web du serious game
- Intégration de Learn2Lead au sein du nouveau site Wordpress
- Ajout du support de multiples résolutions afin que le jeu puisse s'adapter aux tablettes et mobiles
PIN Factor

Été 2012 : Stage de 10 semaines dans l'entreprise I Think Security basée à Waterloo, Ontario (Canada).
Réalisation de la solution PIN Factor :
- PIN Factor est une solution permettant l’identification sécurisée sans avoir recours à un mot de passe. L’utilisateur renseigne son e-mail et un code PIN lui est ensuite envoyé sur son téléphone portable ou sa boîte mail. Il doit simplement recopier le code dans le champ du formulaire pour s’identifier.
- Le site internet de PIN Factor permet aux utilisateurs de s’inscrire au service et de s’enregistrer sur les différents sites internet proposant une identification avec PIN Factor. L’administrateur d’un site peut y inviter de nouveaux utilisateurs par e-mail et accéder au code nécessaire pour intégrer le formulaire PIN Factor dans son site web.
- Utilisation de Javascript pour créer un formulaire d'identification PIN Factor dynamique intégrable partout
- Communication entre le formulaire PIN Factor et le serveur I Think Security grâce à l'Ajax Cross-Domain
- Envoie de SMS grâce aux SMS gateway des opérateurs téléphoniques
Réalisation en autonomie, dans un environnement de travail anglophone.


Accelerator Center, Waterloo
La fantastique aventure des Blounts

La fantastique aventure des Blounts, projet personnel de jeu d'action, 2015
La fantastique aventure des Blounts est un projet de jeu d'action multijoueur développé avec Unity 3D. Chaque joueur contrôle un habitant de la planète des Blounts et combat ses adversaires à toute vitesse, dans une arène générée aléatoirement. Une démo du jeu est déjà jouable en split-screen, avec 3 types d'arme différents et des pouvoirs spéciaux contenu dans les caisses mystères.
La version finale de la fantastique aventure des Blounts comprendra beaucoup plus de contenu et un gameplay remanié : différentes arènes, bruitages complets, pouvoirs spéciaux, nouvelles armes, adversaires contrôlés par l'ordinateur, mini-jeux,...
J'ai pour projet de publier ce jeu sur la plateforme web Big Blue Arms. Avec mon associé, Martin Berlioux, nous publions sur cette plateforme le contenu original et humoristique que nous réalisons: court-métrages, chroniques audio, jeux, clips musicauxs...

Version Windows
- Nécéssite Windows XP SP2 ou plus récent
Version Mac
- Nécéssite Mac OS X 10.8 ou plus récent
- Décompresser l'archive, puis lancer Blounts.app
Version Linux
- Testé sur Ubuntu 16.04
- Décompresser l'archive, puis lancer Blounts.x86 (S'il ne se lance pas, assurez vous que le fichier a le droit de s'exécuter. Exécuter la commande chmod 777 /Chemin/Du/Jeu/Blounts.x86 depuis un terminal permet de le rendre exécutable s'il ne l'est pas)
- Si la touche ne fonctionne pas pour faire avancer le joueur de droite, utilisez la touche
- Si le jeu ne fonctionne pas, assurez vous que votre carte graphique supporte DirectX 9 et que son pilote est à jour.
Pensez à aller dans Paramètres => Graphismes depuis le menu principal afin de régler la qualité d'affichage selon votre configuration matérielle
L'arène de jeu est générée aléatoirement, vous pouvez en générer une nouvelle en appuyant sur tab, puis sur générer une nouvelle map.
Les champignons rouges vous permettent de faire de grand sauts et même des saltos en appuyant sur les touches E ou O.
Les caisses mystères vous confèrent des pouvoirs spéciaux et les portails vous téléportent.
Musique réalisée par Martin Berlioux
L'Excuse
L'Excuse
L'Excuse est un court mètrage que nous avons tourné en mars 2015 avec une équipe de bénévoles et d'amateurs motivés. Je me suis principalement occupé de la logistique du tournage, de la prise de son, du montage, de la post-production et des effets-speciaux.
Voyageur de commerce

Problème du voyageur de commerce, optimisation et heuristiques, Polytech Lyon 2014
Le problème du voyageur de commerce est un problème mathématique qui consiste, étant donné un ensemble de villes séparées par des distances données, à trouver le plus court chemin qui relie toutes les villes
Projet réalisé en binôme. Nous avons implémenté différentes heuristiques pour résoudre ce problème sur différents jeux de données :
- Mise en place de la recherche avec liste Tabou, du recuit simulé, et d'un algorithme génétique
- Mise en pratique sur différents pays ou régions : Canada, Chine, Japon, Sahara, Zimbabwe

Gendarmes et voleur

Gendarmes et voleur, Polytech Lyon 2013
Réalisé en binôme, modélisation de poursuite dans les graphes basée sur les travaux de Richard J. Nowakowsk et Peter M. Winkler (Vertex-to-vertex pursuit in a graph).
- Mise au point d’intelligences artificielles basées sur le parcours de graphes afin que le voleur essaie de survivre le plus longtemps possible alors que les s basées sur le parcours de graphes afin que le voleur essaie de survivre le plus longtemps possible alors que les gendarmes tentent de le coincer.
- Deux types de graphes disponibles : grille 8x8 et hypercube.
- Statistiques permettant de visualiser la performance des IA.

Pacman avec XNA

Pacman, Polytech Lyon 2012
Réalisation d'un Pacman reprenant les codes du jeu original avec un rendu fluide et des graphismes améliorés. 60 fps, fantômes intelligents, accélération du rythme de niveau en niveau.

Puissance 4 en réseau

Puissance 4 en réseau, projet de fin d'étude, IUT de Montpellier 2012.
Réalisation en binôme d'un jeu de Puissance 4 en réseau avec des graphismes 3D :
- Applet java du jeu, rendu 3D avec effets de particules grâce à JMonkeyEngine
- Jeu hors ligne à deux sur une même machine
- Jeu en réseau, communication effectuée grâce à une base de données
- Site internet permettant aux joueurs de s'inscrire et trouver un partenaire de jeu

Jeu de plateforme

Jeu reprenant personnages et monstres de la bande dessinée Kid Paddle, INSA de Lyon 2011
Réalisation en groupe de 4 étudiants d'un jeu de plateforme, de type Super Mario :- Editeur de niveau complet avec export des maps au format XML
- Détection précise des collisions
- Graphismes riches et animations

Simulation proies prédateurs

Simulation de l'évolution d'une population en temps réel face à des prédateurs, INSA de Lyon 2010
Réalisation en groupe de 4 étudiants d'un logiciel ludique simulant l'évolution d'une population :- Population evoluant dans un espace clôt, comportement, durée de vie, aptitude à se reproduire déterminés par un génome.
- Possibilités de placer des prédateurs autonomes et d'en sélectioner un pour le contrôler manuellement.
- Panneau de contrôle permettant de régler le comportement des individus.
- Visualisation de statistiques sur les caractéristiques de la population.

Dark Medusas

Jeu de tir à la première personne dans le cadre du concours Blitz3Dfr 2010
Réalisation d'un jeu 3D entièrement procédurial : utilisation d'aucun media externe, textures et modèles 3D entièrement créées dans le code.
- Génération d'une heightmap pseudo-aléatoire pour le terrain grâce au bruit de Perlin
- Modélisation des meduses, textures, animations, armes et éléments de décors de manière procéduriale
- Gameplay de FPS classique
- Utilisation de librairies externes pour les particules et le ciel
