• Bienvenue sur ce site présentant les projets auxquels j’ai participé, du plus récent (2025) au plus ancien (2007). Ils m’ont permis d’acquérir une bonne expérience dans les domaines du développement logiciel en C++ et de la visualisation 3D.

    Parcours :

    • En 2007, j’ai obtenu mon diplôme d’ingénieur IMAC (Image, Multimédia, Audiovisuel et Communication) à l’Université de Marne-la-Vallée. J’ai ensuite intégré E-on Software (PME française), éditrice du logiciel VUE permettant la création d’environnements réalistes en 3D avec des plantes, terrains, écosystèmes, atmosphères… J’ai eu la chance de pouvoir développer différentes fonctionnalités sur ce logiciel et ses produits dérivés (plugins).
    • En 2015, E-on-Software est devenue une filiale de Bentley Systems, qui a conservé les produits existants jusqu’à 2024, puis a réorienté l’équipe vers le développement d’un autre projet d’application.
    • En 2025, j’ai choisi de partir à la recherche d’une structure plus réduite, de préférence française ou européenne.


  • Images provenant de vidéos de la chaîne Youtube de Bentley Systems.

    Jumeaux numériques avec Unreal Engine

    En 2024 et 2025, j’ai participé à un projet d’application de Bentley Systems basée sur Unreal Engine et les API ITwin et Cesium, permettant à ses utilisateurs de présenter des jumeaux numériques d’infrastructures.

    J’ai développé un outil en C++ pour ajouter des populations d’arbres, personnages et véhicules. J’ai aussi travaillé sur la partie back-end pour la sauvegarde et la lecture des données (serveur utilisant MongoDB et le langage Go). J’ai également implémenté l’ajout de volumes et plans d’eau réalistes, en sélectionnant parmi les techniques existantes celles qui étaient les plus adaptées pour cette application, tout en les améliorant.

    Ce projet m’a beaucoup intéressé parce qu’il m’a permis d’apprendre à développer avec le moteur Unreal Engine, très utilisé aujourd’hui.


  • Intégration du moteur de rendu Cycles (Blender)

    Au cours de l’année 2023, j’ai été chargé d’ajouter dans VUE la possibilité de rendre les scènes avec le moteur Cycles issu du logiciel open source Blender. Il a fallu réutiliser et compléter les capacités d’export de VUE vers le format USD (Pixar), pour convertir la scène en arrière-plan et la transmettre au moteur.

    Ce travail a été particulièrement intéressant car il m’a permis d’explorer le fonctionnement d’un moteur de rendu populaire, récent et performant (parce qu’il utilise le GPU). Cette feature est sortie dans la version finale de VUE publiée en 2024 (téléchargeable ici).

    Image provenant d’une vidéo de la chaîne Youtube d’E-on Software.


  • Plugins d’import de plantes réalistes

    Un autre projet auquel j’ai participé a été le développement de plugins pour 3ds Max / Maya / Cinema 4D permettant de charger des plantes procédurales issues du logiciel PlantFactory (également édité par E-on Software).

    Ces plugins ont demandé une attention particulière pour créer des matières spécifiques à chaque moteurs de rendu : V-Ray, Arnold, Redshift, Cinema 4D, ART (Autodesk Real Time). J’ai travaillé sur la conversion de graphes et la gestion de différents effets comme la transluscence, les propriétés PBR, les matières à 2 côtés, le spéculaire, etc…


  • Plugins de rendu pour 3ds Max, Maya, C4D

    J’ai participé au développement de VUE xStream, un ensemble de plugins intégrant les fonctionnalités de création d’environnement du logiciel VUE (atmosphères, plantes, terrains, écosystèmes…) dans plusieurs applications de références de l’industrie (celles mentionnées dans le titre, ainsi que pour Lightwave et SoftImage).

    Ces plugins fonctionnent sur le principe de la communication entre VUE et l’application hôte, aussi bien au niveau de l’interface que des renderers 3D (les rayons étant transmis de l’un à l’autre).


  • Images provenant d’un test publié par le site CGPress.

    Plugin d’instanciation pour 3ds Max, Maya, C4D

    Un autre projet dans lequel j’ai été impliqué a été le développement du plugin Carbon Scatter, qui intégrait uniquement les fonctionnalités de peuplement de VUE dans des applications hôtes. Il permettait de créer des populations contenant jusqu’à plusieurs millions d’objets, avec son propre éditeur et un outil de peinture d’écosystèmes.

    Contrairement aux plugins de rendu cités précédemment, celui-ci utilisait des instances natives pour chaque moteurs de rendu (V-Ray et Mental Ray pour les applications Autodesk, et celles du moteur de Cinema 4D).


  • Editeur de matières

    Dans le cadre d’une refonte de l’interface utilisateur du logiciel VUE, j’ai eu pour mission de rendre l’éditeur de matières plus homogène et compatible avec les paramètres PBR (Physically Based Rendering).

    Ce travail a demandé un refactoring du code, afin d’utiliser des contrôles semblabes dans les onglets de chaque composante de la matière éditée (diffuse, alpha, normal, metalness, roughness, etc…), tout en conservant certains contrôles et des fonctionnalités spécifiques.


  • Projet personnel: création d’images 3D de New York

    Ayant été comme beaucoup de visiteurs impressionné par l’architecture new-yorkaise, je me suis amusé sur mon temps libre à recréer des images de la ville, en utilisant les capacités du logiciel VUE pour y ajouter des atmosphères nuageuses et sombres. Cette ambiance était en partie un choix mais aussi une nécessité pour cacher les défauts du modèle 3D que j’avais trouvé (incohérences sur les couleurs et qualité insuffisante de la géométrie).

    J’ai passé un certain temps à améliorer le modèle en retravaillant les textures, en intégrant certains gratte-ciels de meilleure qualité téléchargés sur la librairie du logiciel Sketchup à l’époque ou achetés sur Turboquid. J’ai aussi inséré des blocks d’immeubles capturés sur Google Maps à l’aide de différents outils.


  • Optimisations pour les grandes scènes

    J’ai fait en sorte de rendre le logiciel VUE plus rapide avec les scènes lourdes contenant plusieurs milliers de sous-objects, en utilisant l’outil de profiling de Visual Studio pour identifier les causes des ralentissements.

    Les améliorations ont concerné l’interface utilisateur, la sauvegarde et le chargement des meshes, ainsi que la préparation du rendu. Je les ai proposées suite à l’utilisation de VUE pour un projet personnel, dans lequel j’ai généré des images de la ville de New York.


  • Outil de comparaison et de traitement des rendus

    J’ai contribué au développement d’un outil intégré dans VUE proposant différentes fonctionnalités pour l’affichage des rendus et des couches multipass, pour leur comparaison, et pour appliquer des effets de post-processing et artistiques.

    En tant qu’utilisateur du logiciel, j’ai trouvé puis corrigé des bugs, fait des optimisations pour l’affichage fluide des rendus de grande taille, et suggéré quelques fonctionnalités (merge de rendu, courbes de couleurs, rechargement des propriétés des caméras…).


  • Librairie d’export pour applications externes

    J’ai développé une librairie d’export au format VUE à destination d’autres applications.

    Elle a par exemple été utilisée par le logiciel CityEngine (Esri) afin de rendre des villes avec VUE, par le logiciel de conception d’infrastructure Microstation (Bentley Systems), ou par le logiciel de modélisation Shade3D.

    Ce sujet m’a permis d’échanger avec des développeurs de différents pays, ce qui fut une expérience intéressante.


  • Import / Export 3D

    J’ai également travaillé sur plusieurs modules d’import et export 3D pour assurer la bonne interopérabilité de VUE avec d’autres logiciels.

    Cela concernait des formats se voulant génériques apparus successivement dans l’industrie 3D : Collada DAE (2007), FBX (années 2010), USD (après 2020).

    Il y avait aussi des formats historiques encore utilisés à maintenir et améliorer comme OBJ, 3DS, LWO…


  • Effets artistiques

    J’ai travaillé sur l’intégration d’un outil analysant les rendus 3D et générant des images avec différents styles : dessin, peinture, cartoon, etc…
    Ce type de rendu est dit « NPR » (Non-Photorealistic Rendering). J’ai fait en sorte d’avoir une interface complète, fonctionnelle et fluide.

    Ce sujet m’a amené à collaborer avec un développeur polonais, qui avait conçu les algorithmes de traitement d’image, ce qui fut enrichissant.


  • Outils d’animation

    A mon arrivée chez E-on Software, j’ai contribué à l’intégration un système d’animation dans le logiciel VUE, notamment en ajoutant la possibilité d’éditer la pose de modèles provenant de différentes applications 3D (3ds Max, Maya, Daz Studio).

    J’ai permis le paramétrage des bones dans la timeline de VUE à l’aide de courbes d’animation, et j’ai amélioré le fonctionnement de la cinématique inverse pour contrôler l’articulation des membres. J’ai optimisé l’affichage OpenGL des meshes animés, pour avoir un framerate fluide. J’ai aussi contribué au développement d’un plugin pour 3ds Max pour exporter des personnages animés vers VUE.


  • Stage de fin d’études (2007)

    Pendant mon stage de fin d’étude chez Silicon Worlds en 2007, j’ai travaillé sur le développement en C++ et GLSL d’un moteur 3D temps réel utilisé par l’ESA, basé sur OpenSceneGraph.

    J’ai intégré ou ajouté de nouveaux shaders pour divers effets : soleil, lens flare, couche nuageuse avec ombres projetées, transition jour/nuit, etc. J’ai aussi généré un modèle de la terre avec plusieurs niveaux de détails, et intégré des zones spécifiques en plus haute résolution dans ce modèle.