Projet Unity - Infographie Avancée 3D
Exploration avancée de l’infographie 3D avec Unity : Modélisation, Shaders et Effets Visuels
Projet Pluridisciplinaire - ESIEE Paris 2025
👤 Auteurs : Ilyas GHANDAOUI & Cyprien BOSCHER - E4FI
👨🏫 Enseignant : Badr TAJINI
📅 Date : Décembre 2025
🎯 Objectifs Pédagogiques - Tous Atteints ✅
Ce projet démontre une maîtrise complète des 5 objectifs de l’évaluation d’infographie avancée :
| Objectif | Statut | Implémentation |
|---|---|---|
| 1. Shaders Personnalisés Complexes | ✅ | Ray Marching volumétrique, Beer-Lambert scattering |
| 2. Systèmes de Particules Avancés | ✅ | Nuages volumétriques avec noise 3D dynamique |
| 3. Techniques d’Éclairage Avancées | ✅ | Light scattering (Mie/Rayleigh), ombres volumétriques |
| 4. Post-Processing Personnalisé | ✅ | Chaîne de rendu volumétrique temps réel |
| 5. Optimisation des Performances | ✅ | LOD dynamique, chunk streaming, GPU compute |
📋 Description du Projet
Ce projet combine deux techniques graphiques avancées dans Unity pour créer une expérience visuelle immersive :
🌫️ Partie 1 : Nuages Volumétriques (Ilyas)
Rendu volumétrique temps réel avec ray marching et effets de lumière physiquement réalistes.
🏔️ Partie 2 : Terrain Procédural Infini (Ilyas)
Génération procédurale de terrains avec LOD dynamique et streaming optimisé.
⚔️ Partie 3 : Scène de Débarquement (Cyprien)
Simulation graphique avancée d’un débarquement avec tempête de sable, océan volumétrique et rendu cinématique.
🎨 Techniques Avancées Implémentées
1️⃣ Shaders Personnalisés Complexes
Shader de Ray Marching Volumétrique :
- Algorithme de marche de rayon dans un volume 3D
- Échantillonnage de densité avec noise procédural
- Intégration de Beer-Lambert pour l’absorption de lumière
- Calcul de scattering (Mie et Rayleigh)
Technologies : HLSL, Compute Shaders, Fragment Shaders
2️⃣ Systèmes de Particules Avancés
Nuages Volumétriques Dynamiques :
- Génération de noise 3D (Perlin, Worley)
- Fractal Brownian Motion (fBM) multi-octaves
- Animation procédurale en temps réel
- Densité variable et contrôle artistique
3️⃣ Éclairage Avancé
Light Scattering Physique :
- Beer-Lambert Law : Absorption de lumière dans le volume
- Mie Scattering : Diffusion de la lumière par les particules
- Rayleigh Scattering : Effets atmosphériques
- Ombres volumétriques dynamiques
4️⃣ Post-Processing Personnalisé
Chaîne de Rendu Volumétrique :
- Rendu multi-passes optimisé
- Temporal Anti-Aliasing (TAA)
- Depth buffer integration
- Screen-space effects
5️⃣ Optimisation des Performances
Techniques d’Optimisation :
- LOD (Level of Detail) : Adaptation dynamique de la complexité
- Chunk-based Streaming : Chargement progressif du terrain
- GPU Compute : Calculs parallélisés sur GPU
- Occlusion Culling : Élimination des objets non visibles
- Mesh Optimization : Réduction des vertices
📊 Résultats Techniques
Performance
| Métrique | Valeur |
|---|---|
| Frame Rate | 60+ FPS (terrain infini) |
| Draw Calls | Optimisé avec batching |
| Memory Usage | Streaming efficace |
| GPU Utilization | Compute shaders optimisés |
Complexité Technique
- Shaders personnalisés : 2 (Ray Marching, Terrain)
- Systèmes de particules : Volumétrique avancé
- Techniques de noise : Perlin, Worley, fBM
- LOD Levels : Dynamique multi-niveaux
📚 Rapports Techniques Détaillés
Rapport Nuages Volumétriques
Implémentation complète :
- ✅ Ray Marching Algorithm
- ✅ Noise 3D (Perlin, Worley)
- ✅ Light Scattering (Beer-Lambert, Mie, Rayleigh)
- ✅ Optimisations GPU
- ✅ Post-Processing Stack
Objectifs atteints : Shaders complexes, Systèmes de particules, Éclairage avancé, Post-processing
Rapport Génération de Terrain Procédural
Implémentation complète :
- ✅ Bruit de Perlin multi-octaves
- ✅ Level of Detail (LOD) dynamique
- ✅ Chunk-based streaming
- ✅ Mesh optimization
- ✅ GPU Compute pour génération
Objectifs atteints : Shaders complexes, Optimisation des performances, LOD
Rapport Scène Débarquement
Implémentation complète :
- ✅ Render Graph & Optimisation Forward+
- ✅ Simulation de Tempête de Sable (GPU-Driven)
- ✅ Hydrodynamique (Gerstner Waves & Shore Masking)
- ✅ Effets Volumétriques (Brouillard Raymarched)
Objectifs atteints : Optimisation des performances, Shaders complexes, Systèmes de particules, Éclairage avancé
🎬 Démonstrations
1. Nuages & Terrain
Vidéo YouTube : Operation Dragoon - Beneath the Sand
La vidéo démontre :
- Terrain procédural infini en temps réel
- Nuages volumétriques avec effets de lumière dynamiques
- Performance fluide (60+ FPS)
2. Scène de Débarquement
Vidéo YouTube : Rendu Technique - Scène 1B
La vidéo démontre :
- Simulation d’eau et shore masking
- Tempête de sable volumétrique 6-Way
- Distorsion thermique et effets caméra
💻 Ressources Techniques
- Dépôt GitHub : procedural-generation-and-volumetric-cloud
- Documentation : Rapports techniques détaillés inclus
- Code Source : C#, HLSL, Compute Shaders
🏆 Conclusion
Ce projet démontre une maîtrise complète des techniques d’infographie 3D avancées :
✅ Tous les objectifs pédagogiques atteints (5/5)
✅ Techniques avancées : Ray Marching, LOD, GPU Compute
✅ Performance optimisée : 60+ FPS en temps réel
✅ Qualité visuelle : Rendu physiquement réaliste
✅ Documentation complète : Rapports techniques détaillés
Le projet va au-delà des attentes en combinant deux systèmes complexes (nuages volumétriques + terrain procédural) et une scène cinématique optimisée dans une expérience cohérente.