RiftEngine est un moteur de rendu graphique 3D haute fidélité développé en C++20 avec l'API Vulkan. Le projet a été conçu pour éliminer les goulots d'étranglement CPU traditionnels grâce à une architecture orientée données (Data-Oriented Design) et un enregistrement parallèle des commandes GPU sur plusieurs cœurs de processeur.
01 Contexte & Objectifs
02 Spécificités & Défis Techniques
Pipeline de rendu multithreadé avec enregistrement parallèle des Command Buffers
Allocateur mémoire GPU sur-mesure limitant drastiquement les appels système Vulkan
Architecture ECS (Entity Component System) épurée pour un cache hit maximal
Graphe de passes de rendu (Render Graph) avec synchronisation et barrières de mémoire automatiques
03 Choix d'Architecture
Gestion Mémoire GPU
Pools de mémoire alloués statiquement par type de ressource (buffers de sommets, textures, descriptor sets) évitant les allocations à chaud.
Concurrence
Ordonnanceur de tâches de rendu à vol de travail (work-stealing thread pool) adapté au nombre de cœurs physiques.
Pipeline Shaders
Compilation à la volée des shaders GLSL en binaire SPIR-V avec réflexion automatique des descriptors.