14a5a305533d0ad5a9efa8067f9c25ce.ppt
- Количество слайдов: 42
Phénomènes gazeux
Introduction La modélisation des phénomènes gazeux (fumée, nuages, feu) est particulièrement difficile : Se transforme rapidement en vapeurs. Les gaz n’ont aucune géométrie définie : par conséquent, leur modélisation, leur rendu et leur animation sont souvent interreliés. Terminologie : Dynamique des fluides : Mouvement des gaz et des liquides. Équations utilisées Dynamique des fluides computationnelle ("Computational Fluid Dynamics") : pour les modéliser. Note : En général, les gaz sont considérés comme compressibles : - leur densité est variable, - le calcul des changements de densité doit être pris en compte. Les liquides sont considérés incompressibles et la densité de la 2 matière constante.
Les nuages Caractéristiques physiques de base des nuages Les nuages se composent de gouttelettes d’eau et/ou de cristaux de glace visibles, en suspension dans l’air selon l’altitude et, par conséquent, de la température de l’air. Ils se forment lorsque l’air monte, que la vapeur qu’ils contiennent se refroidit jusqu’au point de saturation et qu’elle se condense. C’est la vapeur d’eau condensée qui constitue le nuage. Le nuage peut comporter également des particules liquides acides, des particules solides provenant de vapeurs industrielles, de poussières, de fumées. Plusieurs sources contiennent une très bonne introduction aux nuages et à leur identification. 3
Références générales sur les nuages J. P. Chalon, Combien pèse un nuage ? ou pourquoi les nuages ne tombent pas, Bulles de Sciences, 2 -86883 -610 -0, 2002, 187 p. W. Cotton and A. Anthes, Storm and Cloud Dynamics, Academic Press, New York, 1989. R. House, Cloud Dynamics, Academic Press, Orlando, 1993. R. Tricker, The Science of the Clouds, American Elsevier, New York, 1970. * http: //perso. wanadoo. fr/indexmeteo/. Disponible Non disponible 4
Formes de nuages (*) La forme du nuage varie en fonction de phénomènes qui forcent l’air à monter ou à se gonfler. Ascension due à des montagnes (orographie) Les nuages sont plus isolés. 5
Formes de nuages (*) Ascension d’une masse d’air chaud sur une masse d’air froid 6
Formes de nuages (*) Ascension d’une masse d’air plus chaude que son environnement etc. 7
Brouillard et brume (*) Le refroidissement d’une masse d’air par la base. Lorsque la visibilité est inférieure à 1 km, le brouillard règne. Autrement, il s’agit de brume. 8
Formes de nuages (*) La forme du nuage varie en fonction de l’altitude. 9
Formes de nuages (*) Stratus 10
Formes de nuages (*) Cumulus 11
Formes de nuages (*) Cumulonimbus 12
Formes de nuages (*) Nimbostratus 13
Formes de nuages (*) Stratocumulus 14
Formes de nuages (*) Altostratus 15
Formes de nuages (*) Altocumulus 16
Formes de nuages (*) Cirrocumulus 17
Formes de nuages (*) Cirrostratus 18
Formes de nuages (*) Cirrus 19
Caractéristiques visuelles des nuages Les nuages en possèdent plusieurs facilement identifiables qu’il faut modéliser pour produire des images et des animations précises. Les nuages présentent une structure (volume) amorphe variable avec des détails particuliers à différentes échelles de grandeur. Même un œil peu entraîné est capable de juger rapidement du réalisme d’un modèle de nuage. La formation de nuages est souvent la conséquence de - tourbillonnements, - gonflements ou - turbulences entraînant des caractéristiques visuelles variables dans le temps. Ils renferment de petits cristaux de glace ou de fines gouttelettes d’eau qui absorbent, diffusent ou réfléchissent la lumière. Les caractéristiques d’illumination et d’ombrage doivent être 20 rendues avec précision pour obtenir des images convaincantes.
Problèmes de rendu des nuages Albédo d’un modèle d’illumination : Rapport entre la quantité de lumière qu’un objet réfléchit et celle qu'il reçoit. 1. Les modèles d’illumination des nuages sont divisés : - en modèles à faible albédo : effets de diffusion secondaire négligeables, - en modèles à fort albédo : effets de diffusion secondaire doivent être pris en compte Ex. : nuages épais : cumulus, stratus, cumulonimbus. 2. La réalisation d’un ombrage de nuages satisfaisant exige de recourir à des techniques d’ombrage volumétrique : - algorithme de lancer de rayons volumétrique (coûteux) ou 21 - usage de tables d’ombrage volumétrique.
Modélisation des nuages Défi constant depuis plus de 20 ans. Important de par la nature omniprésente des nuages. G. Y. Gardner, Simulation of Natural Scenes Using Textured Quadric Surfaces. SIGGRAPH’ 84, vol. 18, no. 3, pp. 11 -20. G. Y. Gardner, Visual Simulation of Clouds. SIGGRAPH’ 85, vol. 19, no. 3, pp. 297 -303. Le modèle renferme les 3 éléments suivants : - un plan du ciel || au plan de la terre (plan X-Y) d’altitude A : P(x, y, z) = z – A = 0, - des ellipsoïdes représentant la forme globale des nuages 3 D, - une fonction de texture définie à l’aide de la transformée de Fourier. 22
Modélisation volumétrique des nuages Même si des techniques basées sur la surface sont en mesure de produire des images réalistes de nuages vus de loin, - ces modèles de nuages sont plats et - ils ne permettent pas à l’utilisateur d’entrer de manière transparente dans ces derniers, de s’y déplacer et de les examiner de l’intérieur. Plusieurs modèles basés sur la densité volumétrique ont été proposés: Des densités fractales sont générées : R. Voss, Fourier Synthesis of Gaussian Fractals : 1/f Noises, Landscapes, and Flakes. Tutorial, SIGGRAPH 83. Les nuages générés sont convaincants mais la méthode proposée donne lieu à un comportement dynamique irréaliste. - Peu pratique pour l’animateur de spécifier et de contrôler la densité détaillée 3 D. 23
Modélisation volumétrique des nuages Des densités sont générées, basées sur les propriétés physiques des nuages (à l’aide de systèmes d’équations différentielles). J. T. Kajiya & B. P. Von Herzen, Ray Tracing Volume Densities. SIGGRAPH 84, Vol. 18, No. 3, pp. 165 -174. Des modèles volumétriques convaincants de fumée et de vapeur sont aussi proposés. J. Stam & E. Fiume, Depicting Fire and Other Gaseous Phenomena Using Diffusion Processes. SIGGRAPH 95, pp. 129 -136. N. Foster & D. Metaxas, Modeling the Motion of a Hot, Turbulent Gas. SIGGRAPH 97, pp. 181 -188. - Approche prohibitive du point de vue calcul. Approche non intuitive pour de nombreux animateurs et modélisateurs. Définir et animer des paramètres physiques précis relatifs entre autres à la température de condensation, aux gradients de température et de pression est une tâche laborieuse et 24 gourmande en temps.
Modélisation volumétrique des nuages Des systèmes de particules sont couramment utilisés pour simuler des gaz volumétriques. + Résultats convaincants et contrôle aisé de l’animation. - Le nombre colossal de particules nécessaires pour simuler des nuages réalistes. Exploitation du concept de fonctions implicites pour représenter la forme et la densité des nuages. T. Nishita, E. Nakamae & Y. Dobashi, Display of Clouds and Snow Taking Into Account Multiple Anisotropic Scattering and Sky Light. SIGGRAPH 96, pp. 379 -386. Exemple de cumulonimbus. 25
Modélisation volumétrique des nuages Utilisation de fonctions implicites volumétriques combinées à des systèmes de particules et des outils de simulation (procédures). D. Ebert, Volumetric Modeling with Implicit Functions : A Cloud Is Born. Visual Proceedings of SIGGRAPH 97, p. 147. D. Ebert, K. Musgrave, D. Peachey, K. Perlin, and S. Worley, Texturing and Modeling : A Procedural Approach, AP Professional, Cambridge, Mass. , 1998. Ce modèle de nuage volumétrique utilise une hiérarchie à 2 niveaux : - la macrostructure - la microstructure du nuage. Ces 2 éléments sont modélisés resp. au moyen de fonctions implicites 26 et de densités de volume (fonction stochastique).
Modélisation volumétrique des nuages Macrostructure du nuage Des fonctions implicites permettent de spécifier et d’animer la structure globale d’un nuage. L’utilisateur peut se contenter de spécifier la position, le type et la taille des primitives implicites pour créer la forme globale du nuage. 27
Modélisation volumétrique des nuages Microstructure du nuage Des procédures de génération de bruit sont proposées pour simuler des détails naturels. #define TABSIZE 256 #define TABMASK (TABSIZE – 1) #define RANDNBR (((float)rand())/RAND_MASK) float value. Tab[TABSIZE]; /* Permet d’initialiser un tableau de nombres pseudo-aléatoires entre – 1 et 1. */ void value. Table. Init(int seed) { float *table = value. Tab; int i; srand(seed); for (i=0; i < TABSIZE; i++) *(table++) = 1. 0 – 2. 0 * RANDNBR; } 28
Modélisation volumétrique des nuages #define PERM(x) perm[(x)&TABMASK] #define INDEX(ix, iy, iz) PERM((ix)+PERM((iy)+PERM(iz))) // Évite un accès régulier aux composantes du tableau. // Renvoie une valeur pseudo-aléatoire du tableau précédent à partir // des coordonnées d’un point. float lattice(int ix, int iy, int iz) { return value. Tab[INDEX(ix, iy, iz)]; 29 }
Modélisation volumétrique des nuages // Fonction de bruit retournant une valeur pseudo-aléatoire entre – 1 et 1. float noise(float x, float y, float z) { int ix, iy, iz; int i, j, k; float fx, fy, fz; float xknots[4], yknots[4], zknots[4]; static int initialized = 0; if (!initialized) // Initialisation du tableau aléatoire lors du 1 er appel. { value. Table. Init(665); initialized = 1; } ix = (int)(x); fx = x – ix; iy = (int)(y); fy = y – iy; iz = (int)(z); fz = z – iz; for (k = -1; k <= 2; k++) { for (j = -1; j <= 2; j++) { for (i =-1; i <= 2; i++) // générer 4 valeurs dans [– 1, 1] xknots[i+1] = lattice(ix + i, iy + j, iz + k); yknots[j+1] = spline(fx, xknots); } zknots[k+1] = spline(fy, yknots); } return spline(fz, zknots); } 30
Modélisation volumétrique des nuages Une spline à 4 points est utilisée pour effectuer des interpolations parmi les nombres pseudo-aléatoires recueillis. 31
Modélisation volumétrique des nuages La densité des primitives implicites est combinée à une densité basée entièrement sur le bruit. Le fusionnement des 2 densités permet la création de nuages qui vont de nuages entièrement déterminés par la densité de la fonction implicite à des nuages entièrement déterminés par la fonction de bruit. Ressemblent à des boules de cotton. La combinaison des 2 leur donne un aspect naturel. 32
Animation de nuages volumétriques Ces modèles de nuages volumétriques peuvent être animés au moyen de la dynamique des systèmes de particules avec des primitives implicites attachées à chaque particule. Puisque les fonctions implicites modélisent la macrostructure pendant que les techniques procédurales en modélisent la microstructure, moins de primitives sont nécessaires pour créer des modèles de nuages complexes. Quelques centaines de primitives, soit de cent à mille fois moins qu’avec des systèmes de particules traditionnels. L’utilisateur spécifie quelques primitives implicites de départ et des informations de dynamique, telles que la vitesse globale, la vitesse de départ, la fonction de force et la durée de vie, puis le système génère la position, le nombre, la taille et le type de fonctions implicites de chaque image. 33
Feu Processus particulièrement difficile à modéliser et très gourmand en calculs. Il possède toutes les complexités de la fumée et des nuages avec la complexité supplémentaire de phénomènes internes très actifs. Ces phénomènes produisent de la lumière et du mouvement et créent des attributs d’affichage variant très rapidement. 34
1. Approche basée sur les systèmes de particules L’un des premiers exemples d’incendies générés par ordinateur et qui compte parmi les plus connus apparaît dans le film Strar Trek II : La colère de Khan (Lucasfilm, 82). Un mur de feu balaie la surface d’une planète à partir d’un point d’impact unique. 35
Hiérarchie du système de particules Cette simulation ne constitue pas un modèle d’incendie totalement probant, bien que la séquence du film soit très impressionnante. Le modèle utilise une hiérarchie de particules à 2 niveaux. Premier niveau : Se trouve au point d’impact pour simuler l’explosion de départ. Second niveau : Se compose d’anneaux concentriques de particules, synchronisés de façon à progresser vers l’extérieur à partir du point central, formant le mur de feu et les explosions. Chaque anneau se compose d’un certain nombre de systèmes à particules individuels positionnés sur l’anneau et se chevauchant de façon à former un anneau continu. 36
Modèle cherchant à ressembler à des explosions Les particules sont orientées de façon à s’envoler vers le haut et à s’éloigner de la surface de la planète. La position de départ d’une particule est choisie de manière aléatoire à partir de la base circulaire. La direction de déplacement de départ d’une particule est contrainte de façon à ne dévier que d’un angle inférieur à l’angle d’éjection par 37 rapport à la normale de la surface.
2. Autres approches Des textures animées bidimensionnelles. Inconvénient : Les angles de vues restent limités. Les approches les plus réalistes exigent des techniques sophistiquées issues de la dynamique computationnelle des fluides. Permet d’améliorer les champs de densité et de température. Avantage : Résultats probants. Représentation intrinsèque du mouvement. Inconvénient : Difficiles à contrôler car leurs paramètres sont difficiles à fixer pour tenir compte de l’effet visuel désiré. (contrôle la simulation en spécifiant un champ de vent). Les fondements mathématiques sont complexes. Exemple d’image à la diapositive suivante. 38
J. Stam & E. Fiume, Depicting Fire and Other Gazeous Phenomena Using Diffusion Processus. SIGGRAPH’ 95, pp. 129 -136.
Modèles de diffusion d’incendie dans son environnement (des fosses ou des bâtiments). Inconvénient : Négligent le réalisme visuel. Des représentations globales et extrinsèques du mouvement du feu. H. Rushmeier, A. Hamins & M. Y. Choi, Volume Rendering of Pool Fire Data. IEEE Computer Graphics and Applications, Vol. 15, No. 4, pp. 62 -67, 1995.
Références sur la modélisation et l’animation du feu P. Beaudoin, S. Paquet & P. Poulin, Realistic and Controllable Fire Simulation. Graphics Interface 2001, pp. 159 -166. R. Bukowski & C. Séquin, Interactive Simulation of Fire in Virtual Building Environments. SIGGRAPH’ 97, pp. 35 -44. Rick Parent, Animatique Algorithmes et techniques. Vuibert, Paris, 2003, 530 p. H. Rushmeier, A. Hamins & M. Y. Choi, Volume Rendering of Pool Fire Data. IEEE Computer Graphics and Applications, Vol. 15, No. 4, pp. 62 -67, 1995. J. Stam & E. Fiume, Depicting Fire and Other Gazeous Phenomena Using Diffusion Processus. SIGGRAPH’ 95, pp. 129 -136. Disponible 41
Conclusion La modélisation et l’animation de phénomènes gazeux est une opération délicate. Les gaz changent constamment de formes et n’ont même pas de surface définissable. Le graphisme à l’aide de volumes semble le moyen le plus prometteur pour modéliser et animer des gaz. À mesure que les coûts de traitement informatiques diminuent, des techniques telles que celles issues de la dynamique des fluides computationnelles deviennent des outils plus commodes. Un modèle efficace et visuellement précis du feu reste à élaborer. 42