raytraccer
Moteur de rendu 3D par lancer de rayons en C++. Architecture plugin pour les formes et matériaux, chargement de scènes STL, BVH pour l'optimisation, CI/CD GitHub Actions

Fabriquer une image à partir d'un fichier texte et des lois de la lumière.
Raytracer est un moteur de rendu 3D écrit en C++, construit en un mois à cinq. On lui donne une scène décrite en texte, des formes, des matériaux, des lumières, et il calcule le trajet inverse de la lumière pour produire une image. Rien n'est dessiné : chaque pixel est le résultat d'une simulation. Les reflets, les ombres portées et les transparences viennent directement de la physique reproduite en calcul.
- +Développement d'un plugin de chargement de maillages STL binaire, avec intersection rayon-triangle par la méthode de Möller-Trumbore
- +Intégration de ces maillages dans le système d'accélération BVH pour garder des temps de rendu tenables sur les scènes lourdes
- +Contribution à l'architecture à plugins, où chaque forme, matériau et lumière est compilé en librairie dynamique indépendante
Un moteur physique
En un mois à cinq, on a construit un moteur qui simule le trajet de la lumière. Il lit une scène, lance des rayons pour chaque pixel, calcule les intersections, les rebonds et l'éclairage, puis exporte une image au format PPM.

Une architecture à plugins
Chaque forme, chaque matériau et chaque lumière est un plugin compilé en librairie .so, chargé dynamiquement au lancement. Le cœur du moteur reste petit et générique : on ajoute une capacité en écrivant un plugin, sans jamais y toucher.

Charger le monde réel
Ma partie sur le projet : un chargeur de modèles 3D au format STL binaire. Chaque triangle du maillage devient testable par un rayon via l'algorithme de Möller-Trumbore, et le tout passe par un BVH pour rester rapide même sur des objets à plusieurs milliers de faces.








Image 1 / 7
Un moteur capable de rendre des scènes complètes depuis un simple fichier texte, avec reflets, ombres et matériaux. La preuve qu'une image crédible peut naître uniquement de code et de mathématiques, sans le moindre appareil photo.