Codeur Rank

22 132ème
sur 368 000

Statistiques

depuis la création du compte

Projets réalisés0 projets
Projets terminés0 %
Tarif horaire moyen80
Dernière connexion4 ans
Membre depuisDéc. 2015
Profil vu1 700 fois

Vérifications

Adresse emailVérifié
N° de téléphone(+33623…)Vérifié
Compte FacebookVérifié
Compte LinkedInVérifié

Confiez votre projet à Sylvain

Faites appel à l'expertise de Sylvain pour faire avancer votre projet, ou découvrez autres freelances pour trouver celui qui correspondra parfaitement à vos besoins.

Publier un projet

À propos de Sylvain

Développeur d'applications depuis 13 ans, essentiellement en C++.
J'ai participé à des projets de plus ou moins grande envergure (de 1 à 12 personnes, pour des durées allant de quelques jours à plusieurs années).
Je suis titulaire d'une licence informatique, génie logiciel.
Je recherche des projets de petite à moyenne envergure, quel que soit le domaine d'application.
J'ai travaillé dans divers domaines: jeu vidéo, informatique industrielle, nucléaire, télécoms.
Mon objectif principal est de comprendre les besoins du client, répondre à ces besoins en développant des applications efficaces et performantes.

Réalisations de Sylvain

Castor3D

Projet personnel
2006 - 2019

Castor3D est un moteur 3D multi-plateformes utilisant OpenGL.
Il fonctionne sur les plateformes GNU/Linux (GTK) et Windows.

Fonctionnalités
- Deferred rendering pour les objets opaques
- Weighted Blended rendering pour les objets transparents.
- Normal mapping.
- Parallax Occlusion Mapping.
- Screen Space Ambiant Occlusion (en utilisant le Scalable Ambient Obscurance).
- Shadow Mapping (Raw, PCF, VSM).
- Reflection/Refraction Mapping.
- Rendu PBR (Metallic/Roughness et Specular/Glossiness) et rendu SSR.
- Rendu HDR avec application de divers opérateurs de Tone Mapping.
- Screen Space Subsurface Scattering (sans la backlit transmittance pour l'instant).
- Graphe de scène.
- Architecture modulaire, à base de plug-ins.
- Génération automatique de shaders, en fonction de la configuration de la passe.
- Les shaders peuvent être écrits directement depuis le code C++.

Plug-ins implémentés
Renderers
- GlRenderSystem, pour utiliser OpenGL.
- TestRenderSystem, un renderer de test, ne faisant à peu près rien, mais permettant l'implémentation de tests.

Importers
- ASSIMP, utilisant la bibliothèque assimp pour l'import d'une grande variété de formats.
- PLY, permettant l'import de gros maillage PLY (pour lesquels assimp éprouve des difficultés).
- OBJ, permettant l'import de maillages OBJ.

Dividers
- PN-Triangles.
- Phong.
- Loop.

PostEffects
- Bloom: une implémentation de HDR bloom.
- FilmGrain: ajoute un grain au rendu.
- GrayScale.
- LightStreaks: effet utilisant les Kawase Light Streaks.
- FXAA: un antialisaing de mauvais qualité, mais rapide.
- SMAA: un antialiasing de bonne qualité, mais plutôt ,lent (1X et T2X jusqu'à présent).

Generators
- DiamondSquareTerrain: génère des terrains en utilisant l'algorithme diamond square.

Generics
- CastorGui: étend les fichiers de scène pour ajouter et dessiner des IHM (boutons, zones de texte, ...) via les incrustations 2D.

ToneMappings
- Linear: l'opérateur par défaut.
- HaarmPieterDuiker.
- HejlBurgessDawson (aussi appelé Filmic).
- Reinhard.
- Uncharted2.

Autres applications
- CastorViewer, visualiseur de scènes utilisant Castor3D.
- ImgConverter, projet de conversion de tout type d'images vers XPM ou ICO.

Castor3D par Sylvain Doremus

Procedural Generator

Projet personnel
2010 - 2016

Procedural Generator est une application permettant de charger divers plugins de génération / traitement d'image (générateur).
L'application principale charge les générateurs, permet la sélection du générateur actif et affiche le résultat de son travail.
Le travail des générateurs est découpé en 2 étapes :
- CPU step : génération d'image en utilisant le CPU.
- GPU step : traitement d'image via le GPU.

La GPU step utilise OpenGL et permet l'utilisation des shaders GLSL.
La CPU step est multithreadée afin d'accélérer les calculs.
Certains générateurs peuvent n'utiliser que la CPU step, tels Perlin Noise, Life Game ou Diffusion Limited Aggregation.
D'autres peuvent n'utiliser que la GPU step, tels Shader Effects ou Text Effects.
Certains enfin peuvent utiliser les 2, tel Shader Webcam.

Fonctionnalités :
- Calculs CPU multithreadés
- Les générateurs sont des plug-ins pour plus de flexibilité
- Jeu de la vie (Life Game) : classique, buggé , coloré
- Perlin Noise (marbre, turbulences, parametré)
- Diagrammes de Voronoï (distances euclidienne, euclidienne au carré, manhattan, minkowski, chebychev)
- Iterated Function Systems (Sierpinski carpet et gasket, Koch curve, ...)
- Limited Diffusion Aggregation
- Post-traitement d'image sur le CPU (flou gaussien, réduction de bruit anisotropique et lineaire, accentuation des contours ...)
- Post-traitement d'image sur le GPU (via GLSL)
- Webcam + post-traitement d'image sur le GPU (via GLSL)
- Programmation GLSL pour faire des démos
- Traitement d'image via OpenCL (Version 2.0.0)
- Enregistrement du résultat en image
- Enregistrement du résultat en vidéo (Version 2.0.0)

Procedural Generator regroupe plusieurs projets à générer avec CMake :
- Generator : libraire dynamique regroupant les fonctions et classes communes aux générateurs
- Les générateurs : plug-ins, 1 par générateur
- ProceduralGenerator : exécutable de l'application principale

Procedural Generator par Sylvain Doremus

Formation

2003 - 2004

DUT Informatique

IUT Lens
2004 - 2005

Licence informatique, génie logiciel

Institut des Sciences et Techniques de Valenciennes

Recevez un devis de Sylvain Doremus