Menu

Sylvain DOREMUS

THAMES DITTON

En résumé

Développeur d'applications, ayant envie de travailler dans l'imagerie numérique 2D et/ou 3D.
Connaissance étendue de DirectShow, d'OpenGL (2.x à 4.5) et Vulkan.
Connaissance étendue du développement multiplateforme (GNU/Linux et Windows).

Mes compétences :
C++
Visual studio
Windev
Développement
Programmation
OpenGL
Direct3D
Vulkan

Entreprises

  • Programming Research Ltd / PRQA - Développeur

    2015 - maintenant Programming Research est une entreprise leader dans la prévention des défauts. Leurs solutions promeuvent des pratiques de développement sûres, et aident à assurer du code de haute qualité, pour les applications et les systèmes où la sécurité est essentielle.

    Maintenance corrective sur QAC, application d'analyse statique de code C. Ce composant est compilé en C++, en suivant la norme C++14.

    Maintenance corrective sur le composant dataflow, utilisé pour faire de l'analyse de flux de données, en utilisant le moteur de résolution Satisfiability Modulo Theory (SMT). Ce composant est compilé en C++, en suivant la norme C++14.

    Uniformisation du système de génération, en utilisant CMake.

    Les développements sont faits en utilisant VisualStudio 2015 Update 3 et/ou GCC 4.7, sur les plateformes Windows, Linux et Solaris.
  • Alpes Ingénierie Informatique - Développeur / Chef de Projet

    2010 - 2015 Développement d'une application de gestion de documents et de livrables :
    - C++, sous Visual Studio 2010.
    - SGBD SQLite afin de ne pas avoir à installer l'application.
    - MFC/GDI/GDI+ pour personnaliser l'IHM (effets web).
    - Module de statistiques, avec divers modes d'affichage : histogramme, camembert, tableaux.

    Création d'un décodeur de notices UNIMARC (format d'échange utilisé en bibliographie)
    - C++, sous Visual Studio 2010.
    - Multithreadé.
    - Base de données MSSQL, utilisation d'ODBC.
    - Lit des fichiers UNIMARC (de 1 à 100 000 notices), récupère les notices, insère les données décodées en BDD.
    - Création d'un UDT, A2iDate, pour gérer les dates avant JC, en C#.

    Améliorations d'une application d'acquisition vidéo s'appuyant sur DirectShow :
    - C++, sous Visual Studio 2010.
    - Support des sources Full HD.
    - Enregistrement en MKV, encodage en x264.
    - Encodeur: nVIDIA NVENC.
    - Décodeur: nVIDIA CUVID.
    - Fonctions de conversion de domaines de couleur, en CUDA et SSE2 (RGB, ARGB, YUY2, UYVY, YUV).

    Développement d'un flowsheet pour une application de supervision de nettoyage chimique de générateur de vapeur :
    - C++ sous Visual Studio 2010.
    - Affiché sur 2 écrans LCD de 42 pouces.
    - Utilisation de Direct2D pour dessiner le flowsheet.

    Développement d'une application de supervision du contrôle d'un générateur de vapeur pour Areva :
    - C++ sous VisualStudio 2012, CMake et Boost.
    - Application modulaire au possible, pour pouvoir ajouter des équipements avec le minimum de code à écrire.
  • Fordev Studio - Développeur

    2006 - 2009 Développement d'un ActiveX/plugin Gecko, Elypse Player:
    - C++, sous VisualStudio 2005 puis 2008, et utilisation de Boost.
    - Utilisation du moteur 3D open source Orgre3D.
    - Utilisation du moteur physique open source ODE.
    - Permet la création de scènes 2D/3D scriptables.
    - Capable de lire un fichier de scène, de l'initialiser, puis d'exécuter les scripts, permettant des interactions avec l'utilisateur, des animations, la gestion de physique, gestion du son.

    Développement d'un éditeur de scènes pour Elypse Player, Troll Editor :
    - C++, sous VisualStudio 2005 puis 2008, et utilisation de Boost.
    - Utilisation de wxWidgets pour la portabilité de l'interface graphique.
    - Permet la création de scènes en positionnant les objets dans le monde 3D
    - Permet la création de scripts et leur compilation.
    - Test des scènes ainsi créées.
    - Ligne de temps permettant à l'utilisateur d'insérer des évènements à des instants spécifiques et pour une durée spécifique.

    Création d'un chat et d'un serveur de jeux, en C++, sous GNU/Linux en utilisant Boost.Asio et Boost.Thread. Ce serveur a été développé en utilisant Anjuta.

    Création de mini jeux et d'un chat 3D pour le site www.kazugame.com, en utilisant Troll Editor. Installation d'un serveur web, email et DNS, sur un GNU/Linux, Debian Etch.
  • Projets personnels - Développeur

    Saint-Chamond 2006 - maintenant Castor3D:
    Moteur 3D Open Source, Orienté Objet; écrit en C++11.
    Il fonctionne sous Windows et GNU/Linux (testé sur Debian Wheezy et Ferdora 21).
    Un renderer OpenGL est écrit et un renderer Direct3D 11 est en cours d'écriture.
    Les shaders (GLSL ou HSLSL) peuvent être générés automatiquement (avec le support de Deferred Rendering et Normal Mapping) ou intégrés à partir de fichiers externes.
    Les scènes et objets peuvent êtres importés depuis divers formats, ASSIMP étant utilisé pour les importer.
    Tous les renderers, importers et dividers sont des plugins, pour ajouter en flexibilité.


    ProceduralGenerator:
    Application Open Source et portable de traitement d'image, développée en C++11, OpenGL et wxWidgets.
    Les algorithmes de traitement sont implémentés sous forme de plugins.
    L'application principale charge les plugins, permet le choix du plugin et affiche le résultat des traitements.
    Le travail des plugins s'effectue en 2 étapes :
    - CPU step : calcul de l'image en utilisant le CPU
    - GPU step : post-traitement de l'image en utilisant le GPU et les shaders GLSL.
    Certains plugins n'utilisent que la CPU step, tels PerlinNoise, LifeGame, DiffusionLimited Aggregation.
    D'autres n'utilisent que le GPU step, tels ShaderEffects et TextEffects.
    La GPU step utilise OpenGL et permet l'utilisaation de shaders GLSL et les FBO.
    La CPU step est multithreadée pour accélérer les traitements.

Formations

  • Université Valenciennes (Valenciennes)

    Valenciennes 2004 - 2006 Informatique (IUP GMI)

    Stage 04-07 2006 : In Situa (Borland C++ Builder 6) :
    - Création d’une application 3D de gestion et suivi de personnes et documents (avec le moteur 3D de Digital Bird).

    Stage 04-07 2005 : In Situa (Borland C++ Builder 5.5) :
    - Convertisseur Shape File vers SVG ;
    - Ajout d’un importeur de fichiers AutoCAD pour Digital Bird ;
    - Création d’un importeur de fichiers Shape File pour Digital
  • Université Artois

    Lens 2003 - 2004 Informatique

Réseau

Annuaire des membres :