610 likes | 743 Views
Simulation d’éclairage dans des environnements architecturaux complexes : approches séquentielle et parallèle Daniel Meneveaux Kadi Bouatouch. Plan. Introduction Problématique Structuration Modélisation Regroupement de surfaces Radiosité séquentielle Conclusion et perspectives .
E N D
Simulation d’éclairage dans des environnements architecturaux complexes : approches séquentielle et parallèle Daniel Meneveaux Kadi Bouatouch
Plan • Introduction • Problématique • Structuration • Modélisation • Regroupement de surfaces • Radiosité séquentielle • Conclusion et perspectives
Introduction • Simuler les transferts d’énergie lumineuse entre les surfaces d’un environnement • Architectes, éclairagistes (placement de luminaires) • Évaluer différents paramètres de confort visuel : • niveau d ’éclairement • éblouissement • Acquisition des propriétés photométriques des matériaux (spectrophotomètres) • Utilisation d ’un modèle mathématique exprimant les interreflexions lumineuses
Introductionmodèle d’éclairement • Équation de luminance : • k : réflectance bidirectionnelle • Le : luminance auto-émise • q : angle du rayon incident
Introductionéquation de radiosité • Hypothèse : Surfaces diffuses • Bi : radiosité du carreau i • ri : réflectivité du carreau i • Ei : radiosité auto-émise par le carreau i • Fij : facteur de forme entre les carreaux i et j • Résolution de ce système à l ’aide de méthodes itératives (Jacobi / Gauss-Seidel / Southwell)
IntroductionRadiosité hiérarchique • Maillage hiérarchique des surfaces afin de réduire le nombre de mailles • Création de liens entre les mailles afin d ’accélérer les calculs Liens d ’interaction Mailles Surface A Surface B
Plan • Introduction • Problématique • Structuration • Modélisation • Regroupement de surfaces • Radiosité séquentielle • Conclusion et perspectives
Problématique • 20 000 surfaces : • 200 000 mailles • 1 million de liens • 1 Go de mémoire • Comment faire avec plusieurs millions de surfaces ? • Calcul de radiosité • Visualisation (interactive)
ProblématiqueSolutions • Découper l’environnement en plusieurs sous-parties appelées cellules • Précalculer les relations de visibilité entre ces cellules • Effectuer les calculs de radiosité seulement sur un sous-ensemble de cellules à la fois
Problématiquesolution : architecture VISU géométrie Structuration SIM_SEQ Modeleur BDD RAD Cellules 3D Regroupement de surfaces SIM_PAR Clusters
Plan • Introduction • Problématique • Structuration • Modélisation • Regroupement de surfaces • Radiosité séquentielle • Conclusion et perspectives
Structuration • Objectif «diviser pour mieux régner» : • Découper l’environnement en plusieurs régions appelées «cellules» • 1 cellule = 1 pièce, 1 couloir, etc. • Calculer les relations de visibilité inter-cellules • Résultat : • 1 liste de cellules • 1 graphe de visibilité
Structurationl’existant • Découpage binaire de l’espace BSP [Fuchs80]: • Utilisé par J.M. Airey en 1990 (environnements axiaux) • Repris par Teller en 1992 • Découpage binaire récursif de l’environnement • Chaque partie est découpée à l’aide d’un seul plan • Déterminé selon des heuristiques empiriques (polygone le plus occlusif, découpant le moins de surfaces possibles, etc..) • Résultats : • De trop nombreuses cellules • Ne respectant pas la topologie de l’environnement • Ne fonctionne que pour certains bâtiments : axiaux
Structurationnotre approche • Déterminer des «plans de découpage» verticaux : • associés à plusieurs polygones verticaux quasi-alignés • à l’aide d ’un espace dual • Extraire des cellules : • selon une méthode basée modèle • base de règles • fonctionne pour tout type de bâtiment • Déterminer les ouvertures de chaque cellule : • situées sur les plans de découpage • Construire un graphe de visibilité
Structurationplans de découpage • Espace dual q,r : • q représente l ’angle entre la normale du polygone et l ’axe Ox du repère de la scène • r correspond à la distance orthogonale entre le plan du polygone et l’origine du repère global de la scène Polygone vertical z Aire r y Normale q x r q
Structurationplans de découpage • Classification : • Regrouper les points de l’espace dual proches les uns des autres <=> regrouper des polygones verticaux quasi-alignés • Méthode de classification de type BSP : • Découpage selon l’axe q • Puis selon l’axe r r P1 P2 P3 P2 P3 P4 P4 q P1
Structurationplans de découpage • 1 plan de découpage associé à chaque groupe de polygones verticaux représentés dans l’espace dual • Déterminé par qs et rs : • rs tel que : le demi-espace défini par Ns.Ps + rs >= 0 contienne tous les polygones associés aux points appartenant au cluster
StructurationBase de règles • Cellules rectangulaires contraintes • Cellules rectangulaires non contraintes • Couloirs avec deux murs parallèles • Pièces convexes quelconques : suivi de contours 1 3 4 2
Structurationcréation des ouvertures • Ouvertures situées sur les plans de découpage Plan de découpage Chambranle (de porte)
Structurationcréation du graphe de visibilité • Création d’un graphe d’adjacence • 1 nœud = 1 cellule • 1 arc = 1 ouverture commune • Création du graphe de visibilité • Parcours du graphe d’adjacence en profondeur • Échantillonnage des ouvertures • Calculs de visibilité à l’aide de lancé de rayon
Structurationdécoupage semi-interactif • Sélection d’une zone 3D
Structurationdécoupage semi-interactif • Extraction de la cellule 1
Structurationdécoupage semi-interactif • Extraction de la cellule 2
Structurationdécoupage semi-interactif • Extraction de la cellule 3
Structurationdécoupage semi-interactif • Extraction de la cellule 4
Structurationdécoupage semi-interactif • Extraction de la cellule 5
Structurationdécoupage semi-interactif • Zone bleue = cellules extraites
Structurationdécoupage semi-interactif • Extraction d’une cellule quelconque (suivi de contour)
Structurationdécoupage semi-interactif • Extraction d’une cellule quelconque (suivi de contour)
Structurationdécoupage semi-interactif • Après extraction de toutes les cellules Fenêtre de visualisation
Plan • Introduction • Problématique • Structuration • Modélisation • Regroupement de surfaces • Radiosité séquentielle • Conclusion et perspectives
Modélisation • Pourquoi structurer l’environnement après sa modélisation ? • Plus simple d’utiliser les connaissances de l’utilisateur pour effectuer une structuration efficace • Solution : • Outil interactif permettant de modéliser rapidement des environnements très complexes • Guider la structuration par une modélisation modulaire
Modélisationcréation d’ouverture Description d’une ouverture
Plan • Introduction • Problématique • Structuration • Modélisation • Regroupement de surfaces • Radiosité séquentielle • Conclusion et perspectives
Regroupement de surfacesproblématique • A partir d’une cellule => de nombreuses surfaces sont visibles • Calculs de radiosité pour 1 seule cellule => taille mémoire importante
Regroupement de surfacessolution • Comment affiner encore les relations de visibilité ? • Construire des groupes de surfaces proches les unes des autres : le «clustering» • Évaluer les relations de visibilité inter-«cluster»
Regroupement de surfacestravaux existants • Subdivision spatiale : grilles 3D régulières, arbres BSP, arbres quaternaires, octrees, etc. • Techniques nécessitant la création d’une hiérarchie de volumes, approche descendante • Critères empiriques et peu intuitifs
Regroupement de surfacesnotre approche • Pas de gestion de hiérarchie, méthode ascendante • Technique de classification de type k-means : les nuées dynamiques : • Barycentres mobiles • usuellement utilisée en 2D
Regroupement de surfacesles nuées dynamiques en 3D • Nombre de groupes = nb_total / nb_moyen • nb_total = nombre total de polygones • nb_moyen = nombre moyen de polygones par groupe, fixé par l’utilisateur • Choix des barycentres : de manière aléatoire • parmi les sommets des polygones • Distance entre un barycentre et une surface = distance au barycentre du polygone • Barycentre d’un groupe de polygones = barycentre des barycentres
Regroupement de surfacesapplication aux environnements complexes • Utilisation de la structuration de l’environnement • Regroupement effectué pour chaque cellule • accélération des calculs • réduction des données en mémoire
Regroupement de surfacescalculs de visibilité • Boîte englobante associée à chaque cluster • Zone visible d’un cluster C à travers une ouverture • pyramide à l’intérieur d’une cellule • déterminée par l ’ouverture et la boîte englobante de C Cluster C Cellule Zone visible de C (pyramide) Ouverture
Regroupement de surfacespropagation de la visibilité • Si une ouverture est contenue dans la pyramide, alors les objets situés de l ’autre côtés de l ’ouverture peuvent être visibles Cluster C Nouvelle pyramide
Regroupement de surfacesinterface graphique • Visualisation des relations de visibilité
Regroupement de surfacesinterface graphique • Visualisation des relations de visibilité
Plan • Introduction • Problématique • Structuration • Modélisation • Regroupement de surfaces • Radiosité séquentielle • Conclusion et perspectives
Radiosité séquentielletravaux antérieurs • Une seule approche : [Teller94] • Objectif : maintenir une bonne localité des données en mémoire • 4 heuristiques : • choix aléatoire du cluster (étalon) • choix du cluster = ordre de modélisation • source : choisir le cluster ayant servi comme émetteur le plus souvent • choix BSP : ordre obtenu par le découpage