64
ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ DU QUÉBEC MÉMOIRE PRÉSENTÉ À L’ÉCOLE DE TECHNOLOGIE SUPÉRIEURE COMME EXIGENCE PARTIELLE À L’OBTENTION DE LA MAÎTRISE EN GÉNIE CONCENTRATION TECHNOLOGIES DE L’INFORMATION M.Ing. PAR Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon, 2011

ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

ÉCOLE DE TECHNOLOGIE SUPÉRIEURE

UNIVERSITÉ DU QUÉBEC

MÉMOIRE PRÉSENTÉ À

L’ÉCOLE DE TECHNOLOGIE SUPÉRIEURE

COMME EXIGENCE PARTIELLE

À L’OBTENTION DE LA

MAÎTRISE EN GÉNIE

CONCENTRATION TECHNOLOGIES DE L’INFORMATION

M.Ing.

PAR

Jonathan GAGNON

MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE

MONTRÉAL, LE 26 MAI 2011

c© Tous droits réservés, Jonathan Gagnon, 2011

Page 2: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

c© Tous droits réservés

Cette licence signifie qu’il est interdit de reproduire, d’enregistrer ou de diffuser en tout ou en

partie, le présent document. Le lecteur qui désire imprimer ou conserver sur un autre media une

partie importante de ce document, doit obligatoirement en demander l’autorisation à l’auteur.

Page 3: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

PRÉSENTATION DU JURY

CE MÉMOIRE A ÉTÉ ÉVALUÉ

PAR UN JURY COMPOSÉ DE :

M. Eric Paquette, directeur de mémoire

Département de génie logiciel et des TI à l’École de technologie supérieure

M. Richard Lepage, président du jury

Département de génie de la production automatisée à l’École de technologie supérieure

M. Luc Duong, membre du jury

Département de génie logiciel et des TI à l’École de technologie supérieure

IL A FAIT L’OBJET D’UNE SOUTENANCE DEVANT JURY ET PUBLIC

LE 03 MAI 2011

À L’ÉCOLE DE TECHNOLOGIE SUPÉRIEURE

Page 4: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

REMERCIEMENTS

Nous remercions le Biological Modeling and Visualization research group, Przemek Prusin-

kiewicz et Steve Longay pour nous avoir fourni plusieurs modèles d’arbre qui ont servi à la

validation de notre algorithme. Nous remercions les artistes de Mokko Studio pour leurs com-

mentaires constructifs tout au long du développement. Nous remercions Nicolas Rous et Fran-

çois Dagenais de l’équipe du laboratoire de recherche chez Mokko Studio pour les discussions

et les suggestions. Nous remercions Danny Bergeron, président de Mokko Studio, pour nous

avoir permis de réaliser ce projet.

Page 5: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE

Jonathan GAGNON

RÉSUMÉ

La formation de stalactite de glace est un phénomène complexe, ce qui rend difficile sa modéli-

sation en image de synthèse. Les algorithmes couramment utilisés en infographie utilisent une

approche basée uniquement sur des simulations physiques et qui demande plusieurs minutes,

voire quelques heures de calcul. Ce mémoire propose une technique procédurale permettant

une modélisation interactive. La modélisation est séparée en quatre étapes. La première calcule

le mouvement de l’eau sur une surface ; la deuxième détermine où les gouttes d’eau chutent; la

troisième calcule les trajectoires des stalactites ; la dernière construit la surface. De plus, une

méthode permettant de créer du verglas est combinée à l’étape de modélisation. Les résultats

obtenus sont non seulement réalistes mais aussi rapides à calculer. C’est la première approche

permettant de créer ce type de glace sur des surfaces complexes et de façon interactive.

Mots-clés : Phénomène naturel, modélisation procédurale, stalactite de glace, verglas

Page 6: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE

Jonathan GAGNON

ABSTRACT

Icicles formation is a complex phenomenon which makes it difficult to model for computer

graphics applications. The methods commonly used in computer graphics to model icicles

provide only minimal control over the results and require several minutes or even hours of

computation. This paper proposes a procedural approach allowing interactive modeling, which

is broken down into four stages. The first computes the water motion on the surface ; the second

determines where the water drips ; the third computes the trajectories of the icicles growth, and

the fourth creates the surface. In addition, the approach allows the creation of glaze ice. The

results are not only realistic but also rapidly computed. This approach provides a significant

increase in control over results and computation speed.

Keywords: Natural phenomena, Procedural modeling, Icicle, Ice modeling, Glaze ice

Page 7: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

TABLE DES MATIÈRES

Page

INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

CHAPITRE 1 ÉTAT DE L’ART . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.1 Givre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.2 Verglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3 Stalactites de glace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.4 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

CHAPITRE 2 DÉFINITION DE LA STALACTITE DE GLACE . . . . . . . . . . . . . . . . . . . . . . . . 8

CHAPITRE 3 MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE. . 10

3.1 Calcul des coefficients d’eau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.2 Point de chute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3.3 Définir la trajectoire des stalactites de glace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.3.1 Gestion de la collision de la trajectoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.4 Créer la surface des stalactites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.4.1 Profil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.4.2 Modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3.4.3 Base de la stalactite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.4.4 Verglas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

CHAPITRE 4 RÉSULTATS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

CHAPITRE 5 LIMITATIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

CHAPITRE 6 TRAVAUX FUTURS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

CONCLUSION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

ANNEXE I METABALL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

ANNEXE II L-SYSTEM .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

LISTE DE REFERENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Page 8: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

LISTE DES FIGURES

Page

Figure 1.1 Utilisation de l’algorithme DLA pour la création de givre.

Image produite chez Mokko Studio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

Figure 2.1 Stalactite de glace coupée en deux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Figure 3.1 Étapes de la modélisation interactive des stalactites de glace. . . . . . . . . . . . . . . . . 11

Figure 3.2 Approvisionnement d’eau sur une théière. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Figure 3.3 Coefficients d’eau sur différentes surfaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Figure 3.4 Critère de chute.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Figure 3.5 Région de chute. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Figure 3.6 Point de chute. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Figure 3.7 Photographie de stalactites rectilignes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Figure 3.8 Photographie d’une stalactite courbée. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Figure 3.9 Photographie de stalactites qui fusionnent et qui se divisent. . . . . . . . . . . . . . . . . . 21

Figure 3.10 Illustration des règles du L-System. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Figure 3.11 Exemples de dispersion de branches de stalactites. . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Figure 3.12 Exemples de trajectoires avec différents angles de départ. . . . . . . . . . . . . . . . . . . . 23

Figure 3.13 Trajectoires courbées.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Figure 3.14 Plusieurs possibilités de trajectoires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

Figure 3.15 Résultat d’une trajectoire modifiée par des collisions. . . . . . . . . . . . . . . . . . . . . . . . 25

Figure 3.16 Photographie d’une stalactite de glace

possédant une surface ondulée. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

Figure 3.17 Contrôle de la surface de la stalactite de glace.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

Page 9: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

VI

Figure 3.18 Comparaison d’une modélisation (droite) avec

une vraie stalactite de glace (gauche). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Figure 3.19 Photographie de plusieurs stalactites ainsi que leur base. . . . . . . . . . . . . . . . . . . . . . 30

Figure 3.20 Bases de stalactites sur différentes surfaces courbées. . . . . . . . . . . . . . . . . . . . . . . . . 31

Figure 3.21 Différents types de verglas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Figure 3.22 Rendu de différents types de verglas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Figure 4.1 Stalactites de glace sur une théière. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

Figure 4.2 Stalactites de glace sur une fontaine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Figure 4.3 Stalactites de glace sur le Happy Buddha de Stanford. . . . . . . . . . . . . . . . . . . . . . . . 37

Figure 4.4 Stalactites de glace sur le bunny de Stanford. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Figure 4.5 Stalactites de glace sur l’armadillo de Stanford. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Figure 4.6 Stalactites de glace sur le dragon de Stanford. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Figure 4.7 Stalactites de glace sur un arbre. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Figure 4.8 Zoom sur des stalactites de glace sur les branches d’un arbre. . . . . . . . . . . . . . . 42

Figure I.1 Différentes interactions entre deux metaballs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Figure II.1 Courbe de Koch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Figure II.2 Utilisation de l’angle d’or. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Page 10: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

INTRODUCTION

Contexte

Au cinéma, comme dans les jeux vidéo, la modélisation de phénomènes naturels est de plus en

plus recherchée. En effet, lors de tournages, la température est hors de contrôle et les échéan-

ciers souvant peu flexibles. Il est donc possible que dans le scénario il doive pleuvoir et qu’il

fasse beau lors du tournage, la pluie doit alors être ajoutée en post-production. Il existe toute-

fois des méthodes pour ajouter de la fausse pluie lors d’un tournage. Par contre, lorsqu’il s’agit

de phénomènes plus complexes comme comme des inondations, des tremblements de terre ou

encore des coulées de lave, il est beaucoup plus difficle des les immiter en production ou même

en post-production.

Ces dernières années, beaucoup de ces phénomènes, longtemps impossibles à recréer de façon

réaliste à l’écran, ont été matérialisés numériquement. Il a été possible de les voir notamment

en 2004 dans le film « The day after tomorow » ou encore plus récemment en 2009 dans le film

« 2012 ».

Lorsqu’il s’agit de phénomènes météorologies complexes, il est nécessaire de posséder une

compréhension du phénomène physique et l’utilisation d’un simulateur, ce qui ne vient pas

sans problème.

Problématique et hypothèse

La matière existe sous différentes phases, en particulier liquide, solide et gazeuse. La dyna-

mique d’un état particulier peut dépendre fortement de son état précédent. Par exemple, la

forme de la glace créée par solidification dépend de la dynamique de l’eau juste avant le chan-

gement de phase. Les règles définissant sa création sont donc basées sur la mécanique des

fluides et la thermodynamique. Il serait ainsi possible, avec une simulation physique, d’avoir

de la glace d’apparence réaliste.

Page 11: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

2

L’utilisation de simulation physique pour générer de la glace nécessite souvent un temps de

calcul très long (Kim et al., 2006) ce qui laisse peu de place à l’interactivité. De plus, la ma-

nipulation de plusieurs paramètres qui ne sont pas intuitifs est nécessaire. Lorsqu’un résultat

particulier est recherché par exemple, il faut tester plusieurs combinaisons, ce qui s’avère ardu

et fastidieux. Ce sont ces problèmes qui sont au coeur de ce projet de recherche.

La problèmatique de ce mémoire est donc posée comme suit : comment peut-on procurer à

l’utilisateur une méthode lui permettant de créer des stalactites de glace visuellement réalistes

de façon intuitive et qui laisse place à la créativité ?

L’hypothèse de ce mémoire est par conséquent la suivante : afin de modéliser du verglas et

des stalactites de glace sur des agencements géométriques complexes, un modèle procédural

de glace en plusieurs étapes interactives peut être créé. Il est à noter que ce projet de recherche

portent sur la modélisation géométrique de la stalactite et ne traite pas du rendu graphique.

Organisation

L’organisation de ce mémoire va comme suit. Le chapitre 1 présentera un survol de l’état de

l’art. Le chapitre 2 présentera une définition de la stalactite de glace. Le chapitre 3 présentera

la méthodologie proposée dans ce mémoire. Le chapitre 4 fera état des résultats de la méthodo-

logie. Au chapitre 5, les limitations y seront expliquées. Au chapitre 6, les travaux futurs seront

discutés. Finalement, dans la conclusion, les contributions de ce travail seront résumées.

Page 12: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

CHAPITRE 1

ÉTAT DE L’ART

Dans ce chapitre, l’état de l’art sur la modélisation de la glace en infographie sera présenté.

Le chapitre contient trois sections. Chacune des sections représente un type de glace qui a

été étudié en infographie. Ainsi, la première section porte sur la modélisation de givre, la

deuxième section porte sur le verglas et la troisième section porte sur les stalactites de glace.

Dans la section sur les stalactites de glace, un survol de l’état de l’art concernant le phénomène

physique est introduit afin de bien comprendre la complexité du phénomène à reproduire en

infographie.

1.1 Givre

Le givre se crée lorsque l’eau est sous forme de microgouttelettes. Les champs de phase (phase

field) ont été utilisés afin de calculer ce type de solidification par Kim et al. (2003). Cette

approche donne aussi un certain contrôle à l’utilisateur en permettant la spécification d’une

image source qui affectera l’allure du givre. Dans le but d’augmenter le réalisme, un algorithme

hybride a été créé combinant champs de phase, agrégation par diffusion limitée (Diffusion-

limited aggregation, illustrée sur la figure 1.1) et simulation de fluide (Kim et al., 2004a).

Ces méthodes donnent des résultats plausibles pour la création de givre. Toutefois, comme elles

ne gèrent que les couches très minces de glace, il est impossible de créer d’autres formes telles

que du verglas d’une épaisseur suffisante, ou encore des stalactites. Ces techniques traitent des

cristaux tandis que le verglas et les stalactites de glace sont des phénomènes différents.

1.2 Verglas

Le verglas se crée lorsque l’eau est sous forme de goutte. Les surfaces implicites ont été uti-

lisées afin de modéliser des gouttes d’eau statiques sur une surface (Yu et al., 1999). L’une

des contraintes de cette modélisation est la perte de volume. Il est possible d’ajouter la conser-

Page 13: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

4

Figure 1.1 Utilisation de l’algorithme DLA pour la création de givre.

Image produite chez Mokko Studio.

vation du volume à l’utilisation de surface implicite (Tong et al., 2002). Par contre, le résultat

manque de réalisme puisque l’eau semble très visqueuse. Un système de ressort a été utilisé

par Fournier et al. (1998) pour la modélisation des gouttes d’eau qui procure un résultat plus

réaliste. La technique proposée permet de séparer la modélisation de la goutte et son mouve-

ment sur le maillage. En effet, afin de simuler le mouvement de la goutte d’eau, une simulation

de particules est utilisée indépendamment de la forme de la goutte. Toutefois, cette méthode

ne gère pas la fusion ou la séparation des gouttes d’eau. Pour régler ce problème, Wang et

al. (2005) proposent une méthode dynamique physiquement correcte. Celle-ci tient compte de

l’angle de contact à l’intersection entre le liquide et la surface. De plus, elle gère les surfaces

qui sont courbées et procure un résultat très réaliste. Cette méthode est très précise mais elle

prend toutefois près d’une semaine de calcul par simulation.

Grâce à ces méthodes, il est possible de calculer le parcours d’une goutte d’eau sur une surface

jusqu’à son point de chute. Cependant, ces méthodes sont plus précises que ce qui est nécessaire

pour la création de stalactites et elles ne permettent pas de calculs en temps interactif.

Page 14: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

5

1.3 Stalactites de glace

Ce qui caractérise la stalactite de glace, c’est la solidification de gouttes d’eau qui parcourent la

surface jusqu’à un point de chute. Pour bien comprendre ce qu’implique la création d’une ap-

proche qui traite ce type de phénomène, les modèles théoriques qui existent en glaciologie sont

d’abord présentés. Il existe plusieurs modèles pour la croissance de stalactite de glace. Mak-

konen (1988) propose un modèle de croissance prenant en compte la croissance horizontale

vers l’extérieur, horizontale vers l’intérieur et verticale en direction de la pointe. La convection

et la conduction sont prises en compte notamment pour expliquer le gel de la colonne d’eau

à l’intérieur de la stalactite. Maneo et al. (1994) proposent un modèle incluant la croissance

dendritique à l’extrémité de la stalactite et sur ses côtés en calculant le transfert de chaleur des

couches turbulentes autour de la stalactite. Le modèle de Szilder et Lozowski (1994) permet de

prédire en fonction du temps, la forme, la taille, la fréquence de chute des gouttes d’eau ainsi

que la masse de la stalactite.

Ces modèles sont basés essentiellement sur l’observation empirique faite par les auteurs. Ils

ne fournissent pas de méthodes pour simuler la croissance des stalactites. Toutefois, ils pro-

curent un ensemble complet de règles permettant de comprendre la mécanique de la stalactite.

L’approche proposée dans ce travail s’inspire donc de ces règles pour créer un modèle en info-

graphie qui permet de créer des stalactites. Il suit les observations empiriques de la croissance

de la stalactite en donnant des résultats plausibles sans calculer la dynamique de chaque goutte

d’eau.

La stalactite de glace fut étudiée en infographie par Kharitonsky et Gonczarowski (1993). Ils

proposent un modèle de glace basé sur la thermodynamique utilisant une simulation discrète.

Ce modèle inclut la tension superficielle, la tendance des gouttes d’eau à suivre un emplace-

ment déjà mouillé, l’angle de contact, le transfert de chaleur ainsi que la conductivité. Quoique

le résultat soit réaliste, cette méthode ne peut simuler plusieurs stalactites à la fois. De plus,

le calcul ne se fait que sur la stalactite elle-même. Par conséquent, il faut placer à la main le

résultat de la simulation sur la surface des objets. Kim et al. (2006) se sont attaqués par la suite

Page 15: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

6

à la formation de stalactites de glace en proposant une simulation basée sur « le problème de

Stefan » (Stefan problem) qui permet de simuler plusieurs stalactites. Bien que les résultats de

ce travail soient réalistes, ils nécessitent beaucoup de calcul. Il est mentionné qu’une simula-

tion prend entre 5 et 30 minutes. De plus, les surfaces sur lesquelles sont simulés les glaçons

sont simples et l’utilisateur n’a pas de contrôle sur le positionnement des stalactites.

1.4 Contributions

L’approche proposée permet de réduire considérablement le problème des temps de calcul. En

effet, au lieu de passer par une simulation physique comme c’est de le cas pour Kharitonsky et

Gonczarowski (1993) et Kim et al. (2006), le modèle de calcul est procédural. L’approche cal-

cule automatiquement la distribution d’eau sur la surface. Il est ainsi possible de positionner les

points où l’eau se détache de la surface ce qui était impossible avec les techniques précédentes.

L’approche procédurale, contrairement à la simulation physique, permet de répondre à l’ob-

jectif de l’interactivité avec l’utilisateur. De plus, l’approche permet de traiter des objets aux

surfaces complexes, tels que des arbres.

Les travaux antérieurs ne permettent pas de contrôler la forme des stalactites. Il est donc im-

possible de définir trivialement une taille maximale ou de changer le type de croissance de la

stalactite. Par conséquent, l’approche proposée utilise une grammaire formelle permettant de

générer et de contrôler la croissance de la stalactite.

La modélisation des stalactites de l’approche proposée se fait grâce à l’utilisation de surface

implicite comme dans les travaux de Yu et al. (1999) et de Tong et al. (2002) permettant ainsi

une apparence réaliste de la surface.

En résumé, nos contributions les plus importantes sont :

– Une réorganisation de la simulation en étapes permettant l’intervention de l’utilisateur et un

calcul rapide.

– Un modèle procédural de formation de stalactite de glace et de verglas.

Page 16: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

7

– Un calcul efficace de coefficient d’eau sur une surface.

– Un placement automatique des chutes de gouttes d’eau pour la fondation des stalactites de

glace.

– Une grammaire formelle permettant de générer différents types de croissance de stalactites

de glace.

– Une gestion de la collision de stalactites de glace.

– L’interactivité sur la modélisation et les trajectoires des stalactites de glace.

Page 17: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

CHAPITRE 2

DÉFINITION DE LA STALACTITE DE GLACE

Cette section décrit le processus général de formation des stalactites de glace. Elle met en

évidence le mécanisme de création et de croissance de la stalactite. Par définition, une stalactite

se crée lorsqu’un flot d’eau (ou un autre liquide) coule à la surface d’un objet et se trouve dans

une configuration où il pourrait tomber. Au moment de la chute, si les conditions le permettent,

l’eau encore en contact avec la surface peut se solidifier (Kharitonsky et Gonczarowski, 1993).

Goutte d’eau en suspension

Mince couche d’eau

Vecteur de croissance vers l’extrémité

Vecteur de croissance vers

l’extérieur

Vecteur de croissance vers l’intérieur

Mince cristal de glace

Colonne d’eau

Bulles d’eau

Figure 2.1 Stalactite de glace coupée en deux.

Page 18: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

9

Une stalactite croît en augmentant sa longueur et son diamètre selon Maneo et al. (1994).

Lorsque l’eau qui coule à la surface de la glace laisse une trace mouillée et que celle-ci gèle,

cela crée une couche qui affecte le diamètre de la stalactite (Kharitonsky et Gonczarowski,

1993). Cette mince couche d’eau recouvre de façon uniforme la surface de la stalactite à moins

que la quantité d’eau soit très faible (Kharitonsky et Gonczarowski, 1993). Si la quantité d’eau

est assez importante, l’eau se rend jusqu’à la pointe. C’est seulement à ce moment que la

stalactite peu croître en longueur.

À l’extrémité de la stalactite se trouve une goutte d’eau en suspension. Celle-ci grossit jusqu’à

atteindre une certaine taille avant de tomber. La forme de cette goutte peut être approximée par

un hémisphère (Makkonen, 1988).

Comme illustré sur la figure 2.1, qui s’inspire de la figure 1 de l’article de Makkonen (1988), il

y a trois vecteurs de croissance : croissance horizontale vers l’extérieure, croissance horizon-

tale vers l’intérieure et croissance verticale. Ce sont essentiellement le vecteur de croissance

horizontale vers l’extérieure et le vecteur de croissance verticale qui seront utilisés dans la

méthode proposée.

Au centre de la stalactite de glace se trouve une colonne d’eau et des bulles d’eau prisonnières.

Toutefois, puisque ce sont des détails qui ne sont pas forcément visibles lors du rendu, ils ne

sont pas traités dans ce travail. De plus, les bulles d’eau peuvent être facilement ajoutées par

l’utilisateur après le processus de modélisation.

Page 19: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

CHAPITRE 3

MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE

Le principe de la méthode proposée est de décomposer la création de glace en quatre étapes.

Cette décomposition permet à l’artiste d’intervenir sur le résultat entre les étapes et amène donc

un contrôle accru sur les résultats. De plus, la décomposition proposée permet un calcul très

rapide assurant à l’artiste un contrôle interactif. Qui plus est, l’intervention de l’utilisateur n’est

pas nécessaire pour avoir un résultat réaliste : la méthode permet de calculer ce qui est le plus

plausible en fonction de la surface d’entrée.

La première étape consiste à calculer le parcours de l’eau sur une surface définie par un

maillage de polygones. Le résultat est un maillage avec une valeur sur chaque sommet repré-

sentant le coefficient d’eau. La deuxième étape permet de définir l’endroit où se forme la sta-

lactite. Puisqu’elle se forme où les gouttes d’eau chutent, une approche permettant de calculer

les points de chute a été créée. La troisième étape calcule les trajectoires des stalactites à partir

des points de chute en fonction de leur coefficient d’eau. Chaque trajectoire possède comme in-

formation le coefficient d’eau qui définit le taux de croissance. La quatrième étape modélise la

surface des stalactites en fonction de leurs trajectoires. Différents paramètres, comme le rayon

et le taux de croissance, sont fournis afin d’ajuster le résultat final. De plus, entre chacune de

ces étapes, comme illustré sur la figure 3.1, l’utilisateur peut intervenir et ajuster le résultat.

Par exemple, après les calculs des coefficients d’eau, l’utilisateur peut les repeindre. Les points

de chute peuvent être déplacés et les trajectoires peuvent être éditées. Finalement, le maillage

final peut être retravaillé.

3.1 Calcul des coefficients d’eau

Le calcul du parcours de l’eau sur la surface est la première étape de l’approche proposée.

Le but de cette étape est de déterminer, pour chacun des sommets de la surface, si l’eau s’y

écoule et quelle est la quantité d’eau approximative. Les sommets où l’eau peut s’écouler seront

Page 20: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

11

��������

����� ���

��

Figure 3.1 Étapes de la modélisation interactive des stalactites de glace.

utilisés pour déterminer les régions où les stalactites peuvent se former. La quantité d’eau

approximative servira à déterminer le taux de croissance de la stalactite.

La répartition de l’eau se base sur deux éléments : l’eau atteint la surface afin de créer un

approvisionnement d’eau et l’eau parcourt la surface jusqu’à ce qu’elle s’immobilise ou tombe

de la surface. Lorsqu’il s’agit de la formation des stalactites, une des sources d’eau principales

est la pluie (Makkonen, 1988). Dans notre implémentation, l’origine de la pluie provient d’une

surface source ss spécifiée par l’utilisateur. Les gouttes de pluie sont calculées grâce à un

lancer de rayon en provenance de ss en fonction du vecteur de gravité. L’origine des rayons est

distribuée aléatoirement sur ss en fonction du nombre de rayon défini par l’utilisateur. Chacun

des sommets se trouvant dans un rayon d’influence rii autour du point d’intersection, sera

considéré comme faisant partie de l’approvisionnement. Afin de visualiser le résultat, la couleur

des sommets est rouge pour ceux faisant partie de l’approvisionnement et blanche pour les

autres. À la figure 3.2, la couleur des polygones représente l’interpolation de la couleur des

sommets.

Avec un approvisionnement d’eau défini, le parcours de la surface peut être effectué afin de

calculer les coefficients d’eau. Pour effectuer ces calculs, il serait possible d’utiliser une simu-

Page 21: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

12

Figure 3.2 Approvisionnement d’eau sur une théière.

lation de particules comme pour les approches de Dorsey et al. (1996) et de Fournier et al.

(1998) qui permettrait d’avoir le détail de chaque goutte d’eau sur la surface. Dans l’approche

proposée, l’eau est plutôt propagée de sommet en sommet le long des arêtes du maillage. Cette

méthode est suffisamment précise pour par la suite construire des glaçons et elle a l’avantage

de proposer une simulation de l’écoulement beaucoup plus rapide à calculer.

Les coefficients d’eau peuvent être calculés en imitant la nature : à partir des sommets de

l’approvisionnement, suivre la surface en direction de la gravité jusqu’à trouver un point de

chute. On appelle cette approche vers le bas. Puisque le parcours se fait de sommet en sommet

en utilisant les arêtes, si toutes les gouttes d’eau suivent l’arête la plus basse, il se peut que des

régions restent complètement sèches. Pour éviter ce problème, les gouttes d’eau devraient être

séparées sur plusieurs arêtes, ce qui augmenterait grandement le temps de calcul. De plus, afin

de calculer le verglas, la quantité d’eau qui circule sur chaque sommet doit être connue. Ainsi,

chaque goutte d’eau simulée doit ajuster le coefficient d’eau sur chaque sommet rencontré. Il

en résulte plusieurs écritures mémoire, ce qui réduit l’efficacité de l’approche, en particulier

pour une implémentation en parallèle.

À cause de ces problèmes, une autre approche est proposée dans ce travail : une approche vers

le haut. Elle consiste à calculer la quantité d’eau par sommet en calculant le chemin vers le

sommet le plus haut pouvant être atteint. Ainsi, la quantité d’eau n’est écrite qu’une seule fois

en mémoire, lorsque le sommet le plus haut est trouvé, et il est possible de paralléliser le calcul

Page 22: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

13

efficacement. De plus, chaque sommet pouvant atteindre l’approvisionnement d’eau se verra

attribuer une quantité d’eau évitant ainsi le problème de régions sèches de l’approche vers le

bas. Même si de cette manière l’eau peut être éparpillée sur une plus grande région que ce qui

est réaliste, il faut se rappeler qu’au final ce sera les stalactites qui seront visualisées, non pas

la quantité d’eau ou le parcours de l’eau.

Algorithme 1: Calcul des coefficients d’eau.

foreach sommet v provenant du maillage doSommet courant c = vCoefficient d’eau ce = 0

while il y a des sommets voisins plus haut que c doforeach sommet voisin plus haut n do

// Plus haut par rapport à la gravité gcn = vecteur normalisé de c à np = produit scalaire (cn, g)

Selectionner voisin nmin pour lequel p est le plus petit

// Le plus éloigné n par rapport à gif c ou nmin ∈ approvisionnement d’eau then

d = distance entre c et nminMultiplier d par −pif seulement c ou nmin ∈ approvisionnement d’eau then

/* Il y a moins d’eau puisqu’un des sommets n’est pas dans

l’approvisionnement */

Diviser le resultat par 2

ce = ce + resultat

c = nminSauvegarder ce dans le sommet v

L’approche atteint les buts fixés en donnant des résultats très satisfaisants et en étant très rapide

à calculer. Le calcul des coefficients d’eau est décrit dans l’algorithme 1. Lors du calcul itératif

de la valeur du coefficient d’eau, l’objectif est d’accumuler plus d’eau lorsque la surface est

plus grande (pris en compte par le facteur d) et d’accumuler plus d’eau lorsque l’eau se propage

le long d’une arête qui est plus orientée vers le haut (pris en compte par le facteur −p). Il est

ainsi possible de parcourir tous types de maillage, qu’ils représentent une surface plane ou

courbée. Il existe toutefois deux scénarios qui posent problème lors du parcours de l’eau sur

une surface. Tout d’abord, lorsque les objets sont composés de plusieurs sous-ensembles de

Page 23: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

14

polygones qui ne sont pas connectés ou qui s’interpénètrent, il n’est pas possible de simplement

parcourir la surface le long des arêtes. Le deuxième scénario s’applique aux maillages qui

possèdent des détails inutiles au calcul de l’écoulement d’eau et qui peuvent augmenter le

temps de calcul. Une solution est d’effectuer un prétraitement sur la surface afin que le parcours

de l’eau s’exécute correctement et rapidement. Cette solution utilise une surface implicite créée

à l’aide de Metaballs. Pour plus d’informations sur les metaballs, voir Annexe I

Pour effectuer le prétraitement sur la surface, cette dernière est donc recouverte de metaballs

qui sont converties par la suite en maillage. Il en résulte une surface continue avec des angles

plus réguliers. C’est sur cette nouvelle surface que le calcul du parcours de l’eau est ensuite

effectué. Finalement, les coefficients d’eau ce sont associés au maillage d’origine en utilisant

les sommets les plus proches.

Afin de permettre à l’utilisateur de modifier les valeurs des coefficients d’eau ce, ceux-ci sont

transformés en code de couleurs pouvant être peintes ou modifiées de toute autre façon. Dans

notre implémentation, des valeurs de rouge à bleu ont été utilisées dans l’espace de couleur

HSV. Comme illustré sur la figure 3.3, le résultat est une surface dont la couleur sur chaque

sommet tend vers le bleu, à mesure que la valeur du coefficient d’eau augmente.

Page 24: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

15

��� ���

������

���

Figure 3.3 Coefficients d’eau sur différentes surfaces.

3.2 Point de chute

L’étape précédente a permis de déterminer les endroits où l’eau circule sur la surface et de

calculer une quantité d’eau approximative sur chacun des sommets. C’est avec ces informations

Page 25: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

16

qu’il sera possible de calculer les points de chute. Les coefficients d’eau permettent d’identifier

les endroits où l’eau s’est accumulée. Il existe deux types d’accumulation : l’accumulation sur

une surface concave et l’accumulation sur une surface convexe.

L’accumulation sur une surface concave indique les régions où l’eau reste coincée. L’accumu-

lation sur une surface convexe indique quant à elle les régions où l’eau peut se détacher de la

surface. C’est à ces régions que les stalactites peuvent se former. L’eau en général suit les lois

de la gravité et chute s’il n’y a pas d’objet pour la soutenir. Cependant, à l’échelle des gouttes,

l’eau a tendance à rester attachée aux surfaces même lorsque la surface pointe vers le bas. Une

goutte se détache lorsque la quantité d’eau est suffisamment grande et que la surface est suffi-

samment inclinée. La zone à partir de laquelle les gouttes d’eau peuvent chuter est illustrée à

la figure 3.4.

Critère de chute

Seuil de chute

Figure 3.4 Critère de chute.

Le seuil de chute dl est spécifié par l’utilisateur sous la forme d’un angle par rapport au vec-

teur de gravité. Les polygones faisant partie de la région de chute sont ceux pour lesquels

au moins un des sommets a un coefficient d’eau non nul, et dont la normale de chacun des

sommets respecte le critère de chute présenté à la figure 3.4. Le résultat, comme illustré sur

la figure 3.5, est un ensemble de polygones qui représente les régions d’où les gouttes d’eau

peuvent se détacher. La région de chute peut être facilement éditée afin d’enlever certains en-

droits où l’utilisateur ne voudrait pas voir de stalactite. Par exemple il est inutile de calculer

des stalactites au bas d’un objet qui reposera sur un autre, comme au bas de la théière.

Page 26: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

17

Figure 3.5 Région de chute.

Si un objet a une forte courbure modélisée avec peu de polygones, il se peut qu’il y ait des zones

où le critère de chute se manifeste, mais où aucun polygone ne respecte le critère d’orienta-

tion des normales pour tous ses sommets. Dans ce cas précis, l’approche proposée permet de

positionner les stalactites sur les sommets et les arêtes où s’opère la transition d’orientation de

normales qui traverse le critère de chute.

En fonction du nombre de stalactites que l’utilisateur indique en entrée, des points sont distri-

bués aléatoirement sur la région de chute. Ces points sont les points de chute, comme illustré à

la figure 3.6, sous la forme de cercles avec une couleur correspondant à la valeur du coefficient

d’eau ce.

Figure 3.6 Point de chute.

Page 27: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

18

L’ensemble des points de chute peut être modifié par l’utilisateur. Il est possible de changer la

position des points et de changer le coefficient d’eau associé à chacun d’eux.

3.3 Définir la trajectoire des stalactites de glace

La définition des trajectoires de stalactite est la troisième étape de l’approche proposée. Une

trajectoire est instanciée à chaque point de chute. À partir du coefficient d’eau, la taille finale

de la stalactite est calculée directement. Ceci est un autre avantage du découplage proposé de

la simulation en étapes. Il n’est donc pas nécessaire de simuler itérativement la croissance de

la stalactite, ce qui contribue à l’interactivité de l’approche.

Dans la nature, la croissance d’une stalactite dépend de plusieurs facteurs comme le change-

ment de température, la direction du vent, la quantité d’eau d’approvisionnement, etc. Visuel-

lement, il en résulte différents types :

– rectiligne, voir figure 3.7 ;

– courbé, voir figure 3.8 ;

– divisé, voir figure 3.9.

Il est ainsi possible de rencontrer des stalactites plus ou moins courbées et plus ou moins

divisées ayant une longueur variable selon l’approvisionnement d’eau. Il est aussi possible que

les stalactites fusionnent entre eux. Dans l’approche proposée, la fusion est toutefois traitée

uniquement lors de la création de la surface.

L’étape du calcul des trajectoires propose des règles qui permettent de simuler différents types

de croissance de stalactites. Pour la définition de ces règles, plusieurs images de stalactites

comportant plusieurs branches ont été observées. D’après cette analyse, un L-System (Prusin-

kiewicz et Lindenmayer, 1990) qui reproduit les cas étudiés a été développé.

Page 28: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

19

Figure 3.7 Photographie de stalactites rectilignes.

Pour permettre à l’utilisateur de contrôler l’apparence de la stalactite, différents paramètres

sont utilisés :

– angle de roulis de départ e ;

– courbure c ;

– probabilité de division d ;

– angle de dispersion a.

Page 29: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

20

Figure 3.8 Photographie d’une stalactite courbée.

Les règles qui donnent des résultats réalistes sont les suivantes :

ω : /(e)FX

p1′ : X 1−d−−→+(c)FFF/(a)X

p1′′ : X d−→ [+(c)+(30◦)F−(30◦)FX ]A

p2 : A → +(c)FFF\(a)X

(3.1)

Le système utilise une prémisse ω et trois règles (p1′, p1′′ et p2 ) qui sont illustrées à la

figure 3.10. Pour plus d’information sur la notation des L-Systems, se référer à l’annexe II.

Page 30: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

21

Figure 3.9 Photographie de stalactites qui fusionnent et qui se divisent.

La règle p1′ représente une croissance rectiligne. La règle p1′′ représente la création d’une

nouvelle branche. La règle p2 représente la croissance du tronc après la création d’une branche.

Le paramètre e représente l’angle du roulis de départ. Il détermine la direction que prendra la

croissance de la stalactite. Le paramètre c représente la courbure. C’est l’angle utilisé lors de

chaque pas ainsi que lors de la création d’une nouvelle branche. Le paramètre a représente le

roulis effectué pendant la croissance. Il détermine l’irrégularité lors de la création des nouvelles

branches de la stalactite ainsi que leur dispersion. Le paramètre d représente la probabilité

de division. C’est la probabilité d’avoir une nouvelle branche. Le nombre de générations du

L-System correspond à l’indice de croissance i. Cette valeur vient du coefficient d’eau associé

au point de chute. L’utilisateur a toutefois la possibilité de modifier cette valeur.

Page 31: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

22

X

+c°+30°-30°

A

X

X

\

+

/

F

FFF

FFFF

F

a°/

Figure 3.10 Illustration des règles du L-System.

L’angle du roulis a représente l’angle de dispersion. Chaque nouveau roulis est calculé comme

suit : a = au×137,5◦/360◦ où au représente l’angle spécifié par l’utilisateur. La valeur 137,5◦

est un nombre utilisé lors de la création de plantes (Prusinkiewicz et Lindenmayer, 1990) afin

de générer une croissance en spirale avec des proportions naturelles. Pour plus d’information

sur l’utilisation de cette angle, se référer à l’annexe 1, section 5. Ainsi, lorsque au est égale

à 360◦, les branches croissent dans tous les sens de façon égale. Par contre, lorsque au est

bas, les branches croissent plus ou moins dans le même sens. La figure 3.11 illustre plusieurs

exemples de croissance de branches vues du haut avec différentes valeurs de au. Il est possible

de constater que plus la valeur de au augmente, plus les branches sont dispersées. Ce paramètre

permet donc à l’utilisateur de définir à quel point les branches des stalactites peuvent se répartir

dans une direction donnée.

Page 32: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

23

Figure 3.11 Exemples de dispersion de branches de stalactites.

L’angle de départ e, comme illustré sur la figure 3.12, affecte la direction que prendront les

stalactites dans le cas ou l’angle de dispersion est petit. Dans les exemples (a), (b) et (c) de la

figure 3.12, l’angle de courbure c est égal à 5 et l’angle de dispersion d est égale à 0.

e = 0° e = 90° e = 180°

(a) (b) (c)

Figure 3.12 Exemples de trajectoires avec différents angles de départ.

L’angle de courbure c est utilisé sur chacune des générations du L-System. Pour créer une

stalactite rectiligne, la variable de courbure doit être très basse de même que la variable de

division (voir figure 3.13(a)). Lorsque c = 0, la stalactite suit une ligne parfaitement droite.

Lorsqu’il y a du vent, cela produit des stalactites courbées qui peuvent être créées en ajustant

la valeur de c, comme c’est le cas sur les figures 3.13(b) et (c).

Ainsi, plusieurs combinaisons sont possibles avec différentes valeurs comme il est possible de

voir sur la figure 3.14.

Page 33: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

24

��� ��� ���

�������

� � ���� � ����

�������

� � ��� � ����

�������

� � ��� � ����

��� �� ��� �� ��� ��

Figure 3.13 Trajectoires courbées.

Figure 3.14 Plusieurs possibilités de trajectoires.

La trajectoire résultante est composée de points qui proviennent de chaque pas du L-System.

La trajectoire servira de guide pour la modélisation de stalactites. Elle est paramétrable par

l’utilisateur. De plus, le temps de calcul est presqu’instantané afin d’obtenir des trajectoires très

différentes facilement, procurant ainsi une grande interactivité. La possibilité de visualiser de

façon interactive les trajectoires est un avantage majeur comparativement aux approches basées

sur une simulation physique, dans lesquelles le temps de simulation et le peu de contrôle sur

les résultats gênent la créativité de l’utilisateur.

Page 34: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

25

3.3.1 Gestion de la collision de la trajectoire

La stalactite, dans sa croissance, peut entrer en collision avec la surface d’un autre objet. Dans

ce cas, elle suit la surface en direction de la gravité jusqu’à ce qu’elle atteigne la région de

chute ou qu’elle s’arrête dans un creux de la surface. Ensuite, la trajectoire est poursuivie à

partir du point d’entrée dans la région de chute. Il est ainsi possible, comme on peut le voir

sur la figure 3.15, de mettre n’importe quelle surface sur la trajectoire de la stalactite initiale et

d’avoir un résultat réaliste. Le calcul des collisions n’est pas fait lors du calcul des coefficients

de passage. En effet, puisque c’est l’utilisateur qui détermine le nombre de stalactites désiré,

c’est seulement après avoir définit les points de chute qu’il est utile de calculer s’il y a collision.

(a) (b)

Figure 3.15 Résultat d’une trajectoire modifiée par des collisions.

3.4 Créer la surface des stalactites

Le calcul de la surface est la dernière étape de cette approche. Elle consiste à créer une surface

autour de la trajectoire définie à l’étape précédente. La méthode proposée consiste à calculer

le rayon de la stalactite pour chacun des points de la trajectoire. À cet effet, une fonction qui

décrit un profil a été développée.

Page 35: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

26

3.4.1 Profil

Afin de déterminer le profil adéquat, l’approche proposée s’inspire des travaux de glaciologie.

En effet, une stalactite de glace croît 10 à 30 fois plus rapidement en longueur qu’en largeur

(Makkonen, 1988) ce qui lui donne la forme d’un tube. Lorsque l’eau qui coule à la surface

de la glace laisse une trace mouillée et que celle-ci gèle, cela crée une couche additionnelle

qui affecte le diamètre de la stalactite (Kharitonsky et Gonczarowski,1993). Ainsi, la couche

additionnelle peut donner une forme conique à la stalactite selon la proportion des gouttes

d’eau qui gèlent avant de se rendre à la pointe. Pour modéliser le tronc, nous avons donc besoin

d’une fonction nous permettant de créer autant un tube qu’un cône. Les expérimentations de

Maneo et al. (1994) ont démontré que le rayon de la goutte en suspend est en moyenne de

2,44 millimètres. La pointe des stalactites sera donc modélisée par un hémisphère de cette

dimension. Il est possible d’avoir des stalactites qui ont une forme plus ou moins conique, mais

aussi plus ou moins ondulée. À cet effet, trois variables sont disponibles pour l’utilisateur :

f o pour la fréquence d’ondulation, ao pour l’amplitude de l’ondulation et t pour le taux de

croissance qui détermine la forme conique. Ces variables sont utilisées dans la fonction de

profil décrite à l’équation I.2.

R(x) = tip+(L− x)× t +ao× sin(x× f o) (3.2)

Pour une position x donnée, de la base de la stalactite (x = 0) jusqu’à la pointe (x = L), R(x)

représente le rayon de la stalactite. Dans l’équation I.2, tip représente le rayon de la pointe de la

stalactite. La variable tip est ajustée à l’équivalent de 2,44 millimètres dans l’environnement

3D. Partant de la pointe et remontant vers la base de la stalactite, le rayon augmente selon

(L−x)× t. Ce deuxième terme est utilisé afin de représenter une forme plus ou moins conique.

Finalement, le terme ao× sin(x× f o) sert à calculer l’ondulation de la surface à l’aide des

paramètres de fréquence et d’amplitude fournis par l’utilisateur.

Page 36: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

27

3.4.2 Modélisation

Avec la fonction de profil, il est maintenant possible de générer une surface. La surface est

construite grâce à l’utilisation de metaballs. De plus, ces dernières permettent la fusion entre

plusieurs stalactites. Les metaballs sont positionnées sur les points de la trajectoire et le rayon

des metaballs provient de la fonction de profil. Comme illustrée à la figure 3.17 (a)-(c), il est

possible de générer des surfaces plus ou moins coniques et plus ou moins ondulées.

Tout comme pour l’approche de Kim et al. (2006), l’approche proposée utilise une sinusoïdale

afin de simuler l’ondulation de la surface. L’application de la sinusoïdale donne comme résultat

une surface très régulière. En effet, les ondulations de la stalactite sont symétriques ce qui n’est

pas très réaliste. Comme il est possible de le constater sur la figure 3.16, l’ondulation devrait

être plus aléatoire.

Figure 3.16 Photographie d’une stalactite de glace

possédant une surface ondulée.

Afin de rendre la modélisation plus plausible, l’approche proposée permet d’ajouter du bruit

non pas lors du rendu, comme c’est le cas dans l’approche de Kim et al. (2006), mais lors

de la construction de la surface. Plutôt que de mettre les metaballs uniquement le long de la

Page 37: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

28

trajectoire, elles peuvent subir une translation dans le plan perpendiculaire à la trajectoire. Cette

perturbation aléatoire est contrôlée par un paramètre de bruit noté cb. À partir du point de la

trajectoire, le centre de la metaball est déplacé aléatoirement d’une distance d’au plus eb dans

le plan perpendiculaire à la trajectoire. Comme illustrée sur la figure 3.17(d)-(f), le résultat est

moins régulier et plus réaliste. De plus, la forme générale, l’ondulation et le bruit peuvent être

ajustés afin de correspondre assez bien à ce qu’il est possible d’observer sur des photographies

de vraies stalactites de glace (Figure 3.16).

��� ������

�������� �������� ��������

��� ������

������� !�������

"�������������� ��������

"��������������������

"������

Figure 3.17 Contrôle de la surface de la stalactite de glace.

Comme il est possible de le voir sur la figure 3.18, le résultat de la modélisation est très proche

de la réalité.

Page 38: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

29

Figure 3.18 Comparaison d’une modélisation (droite) avec

une vraie stalactite de glace (gauche).

3.4.3 Base de la stalactite

La base de la stalactite est l’endroit où elle s’attache à la surface de l’objet. Comme il est

possible de le voir sur la figure 3.19, sa forme est plutôt variable et est influencée par la quantité

d’eau de l’approvisionnement. Il est possible d’observer dans la nature que l’épaisseur de glace

sur la surface augmente considérablement plus celle-ci est proche du point de chute.

Afin de calculer la surface de la base de la stalactite, un ensemble de metaball est distribuée sur

la surface de l’objet autour du point de chute jusqu’à une distance eb spécifiée par l’utilisateur

et qui représente l’étendu de la base. Le nombre de metaball distribuée sur la surface est spécifié

Page 39: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

30

Figure 3.19 Photographie de plusieurs stalactites ainsi que leur base.

par l’utilisateur et est noté nbmb. Le rayon de chaque metaball est calculé comme suit :

rb =(eb−d)2

eb2× ce (3.3)

où d est la distance entre la position du point de chute et le point courant et où ce est le

coefficient d’eau. Le résultat, comme illustré sur la figure 3.20, est une base de stalactite qui

s’adapte bien à la surface. Les exemples de la figure 3.20 sont (a) une sphère, (b) un cube après

une rotation et (c) une théière.

Page 40: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

31

(a) (b)

(c)

Figure 3.20 Bases de stalactites sur différentes surfaces courbées.

3.4.4 Verglas

Lorsque les stalactites sont combinées avec une surface de verglas, il en résulte un maillage qui

recouvre la surface de départ de glace comme illustré à la figure 3.21. Il est possible d’observer

trois types de solidification :

– l’eau atteint la surface et gèle rapidement, figure 3.21(a) ;

– l’eau atteint la surface et gèle plus lentement, figure 3.21(b) ;

– l’eau tarde à geler sur la surface, figure 3.21(c).

Le verglas se calcule à l’aide des coefficients d’eau et d’un coefficient appelé durée de vie

d’une goutte d’eau, noté dv. Des metaballs sont distribuées aléatoirement sur la surface en

fonction de la dimension de celle-ci. Le nombre utilisé est une variable définie par l’utilisateur

notée nver. Afin de générer les différents types de verglas de la figure 3.21, l’équation 3.4 a été

développée :

rv = minVer+ s× [dHaut ×dv+dBas× (1−dv)] (3.4)

Page 41: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

32

(a) Eau gèle rapidement

(b) Eau gèle uniformément

(c) Eau gèle lentement

Verglas Surface

Figure 3.21 Différents types de verglas.

où rv est le rayon de la metaball placée sur la surface, dHaut est la valeur de distance entre le

sommet courant et le sommet le plus haut, dBas est la valeur de la distance entre le sommet

courant et le sommet le plus bas de la région de chute, minVer est l’épaisseur minimum du

verglas, s est le ratio de dimension du verglas. Tel que présenté à la figure 3.22, lorsque la

valeur de dv est égale à 0, le premier type de verglas est obtenu, 0,5 procure le deuxième et 1,

le troisième.

Figure 3.22 Rendu de différents types de verglas.

Page 42: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

CHAPITRE 4

RÉSULTATS

L’approche proposée permet de créer avec succès des stalactites et du verglas sur différentes

surfaces complexes. Son utilisation permet un bon contrôle sur l’allure du résultat final. Ce

contrôle se fait à l’aide de plusieurs paramètres présentés au tableau 4.1. Bien qu’il y ait plu-

sieurs paramètres, l’utilisateur n’en manipule typiquement qu’un sous-ensemble. Par exemple,

seuls les six paramètres ns, c, d, f o, ao et cb doivent être ajustés pour produire tous les résultats

présentés dans cette section.

Pour les tests, plusieurs surfaces différentes ont été utilisées. Les résultats se trouvent sur les

figures 4.1 à 4.8 qui ont été générées chez Mokko Studio, et les temps de calcul pour chacune

des phases se trouvent dans le tableau 4.3. Les maillages des figures 4.3, 4.4, 4.5, 4.6

proviennent du Computer Graphics Laboratory de l’Université de Stanford. Le maillage de la

figure 4.7 provient de l’Université de Calgery.

Afin de créer les stalactites plus ou moins ondulées de la théière de la figure 4.1, une faible

amplitude a été utilisée avec un peu de bruit. Pour les stalactites lisses de la fontaine de la

figure 4.2, les valeurs d’ondulation et de bruit sont très faibles. Concernant les stalactites cour-

bées et ondulées du Happy Buddha de la figure 4.3, les valeurs d’ondulation et de bruit sont

plus élevées. De plus, afin de créer un verglas bosselé, le nombre de metaballs a été ajusté

afin qu’elles soient suffisamment distancées entre elles pour réaliser cette effet. Le bunny de

Stanford de la figure 4.4 quant à lui contient une plus faible fréquence d’ondulation et une plus

grande probabilité d’avoir des divisions. Il est ainsi possible de constater que deux stalactites

contiennent des divisions. Pour l’armadillo de la figure 4.5, la fréquence a été ajustée au maxi-

mum afin de créer des glaçons très ondulés. La même amplitude a été utilisée pour le dragon de

Stanford (figure 4.6) mais cette fois-ci avec une fréquence plus petite. L’arbre de la figure 4.7

a été modélisé avec des glaçons lisses utilisant des valeurs semblables à celles de la fontaine.

Les valeurs de test se retrouvent dans le tableau 4.2. Finalement, la figure 4.8 représente un

Page 43: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

34

Tableau 4.1 Paramètres de contrôle

Description Domaine Valeurtype

Coefficients d’eauss Surface source - -

g Vecteur de gravité - (0 -1 0)

nr Nombre de rayons ]1..∞[ 500

rii Rayon d’influence ]0..∞[ 1

à l’ intersection

Points de chutens Nombre de stalactites ]1..∞[ 10

dl Seuil de chute ]1..90◦[ 75◦Trajectoirese Roulis de départ [0..360◦[ 0◦c Angle de courbure [0..360◦[ 2◦d Probabilité de division [0..1[ 0,1

au Angle de roulis de croissance [0..360◦] 360◦et de dispersion

Modélisation de la surfacet Ratio de croissance [0..∞[ 0,05

ao Amplitude de l’ondulation [0..∞[ 0,3

f o Fréquence de l’ondulation [0..∞[ 50

eb Étendu de la base [0..∞[ 1

nmb Nombre de metaballs [1..∞[ 100

à la base

cb Coefficient de bruit [0..∞[ 1

VerglasminVer Rayon minimum [0..∞[ 0

du verglas

nver Nombre de metaballs [0..∞[ 5000

utilisée pour le verglas

s Dimension du verglas [0..∞[ 1

dv Durée de vie [0..1] 0,5

de la goutte d’eau

zoom sur des branches qui ont été modélisées chez Mokko Studio. Les mêmes valeurs que sur

la figure 4.7 ont été utilisées. Le nombre de stalactites visibles peut sembler plus petit que la

valeur ns entrée. La raison en est que plusieurs stalactites peuvent se retrouver très proches

Page 44: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

35

Tableau 4.2 Paramètres de contrôle utilisés lors des différents tests

FiguresParamètres (4.1) (4.2) (4.3) (4.4) (4.5) (4.6) (4.7)ns 12 100 30 20 200 200 400

c 0◦ 0,1◦ 0,5◦ 3◦ 10◦ 3◦ 0,8◦d 0,1 0,1 0,1 0,3 0,015 0,075 0

f o 50 100 500 50 500 100 50

ao 1 1,7 1,45 0,3 0,3s 0,3 1,3

cb 0,5 0,1 1,5 0,4 0,4 0,4 0,5

Figure 4.1 Stalactites de glace sur une théière.

Page 45: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

36

Figure 4.2 Stalactites de glace sur une fontaine.

les unes des autres et ainsi fusionner. De plus, certaines stalactites peuvent se retrouver tout

simplement de l’autre côté de l’objet et ainsi être cachées.

Les évaluations ont été effectuées sur un Intel Xeon 3,4 Ghz. Afin de créer des images réalistes,

le moteur de rendu Mantra de SideFx a été utilisé pour générer les images qui se trouvent dans

ce mémoire. Comme il est possible de le constater, l’approche proposée est relativement rapide

comparativement aux travaux antérieurs. En effet, à titre de comparaison, la fontaine dans l’ar-

Page 46: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

37

Figure 4.3 Stalactites de glace sur le Happy Buddha de Stanford.

ticle de Kim et al. (2006) (figure 5 de leur article) prenait 30 minutes à simuler (sur un Pentium

4 3 GHz) et ici elle prend environ 55 secondes (sur un Xeon 3,4 GHz double coeur). Quoique

les stalactites générées sont de qualité visuelle comparable au travail de Kharitonsky et Goncza-

rowski (1993), l’approche proposée permet en plus de positionner les glaçons automatiquement

sur la surface à des endroits plausibles et génère une surface de glace convaincante qui attache

la stalactite à la surface de l’objet. Par conséquent, il est possible de modéliser des centaines

de stalactites sur des surfaces beaucoup plus complexes, tel un arbre, en un temps raisonnable.

Page 47: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

38

Figure 4.4 Stalactites de glace sur le bunny de Stanford.

Page 48: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

39

Figure 4.5 Stalactites de glace sur l’armadillo de Stanford.

Page 49: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

40

Figure 4.6 Stalactites de glace sur le dragon de Stanford.

Page 50: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

41

Figure 4.7 Stalactites de glace sur un arbre.

Page 51: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

42

Figure 4.8 Zoom sur des stalactites de glace sur les branches d’un arbre.

Tableau 4.3 Statistiques des résultats

Figures (4.1) (4.2) (4.3) (4.4) (4.5) (4.6) (4.7)Nombre de polygones 2 2 15 4 30 11 6

en entrée (en millier)Nombre de stalactites 12 300 10 20 200 200 400

Nombre de polygones 10 180 750 103 390 245 131

en sortie(en millier)Temps decalcul (secondes)Coefficients d’eau 0,1 0,1 0,5 0,3 5 0,4 0,3

Point de chute 0,1 0,5 0,2 0,1 0,5 0,5 0,5

Trajectoires 0,1 0,2 0,1 0,2 0,5 0,5 1

Modélisation 11 55 60 20 116 19,5 36

de la surfaceTemps total (secondes) 11,3 55,8 60,8 20,6 122 20,9 37,8

Page 52: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

CHAPITRE 5

LIMITATIONS

La création de stalactite en forme de lame nécessite la manipulation des glaçons à l’unité. En

effet, puisque la forme de lame dépend essentiellement de la forme de la surface de l’objet,

il est souvent nécessaire à l’utilisateur d’effectuer une rotation une fois que la stalactite est

aplatie, et ce, pour chacune des stalactites affectées, ce qui peut s’avérer redondant.

Afin d’obtenir un temps de calcul rapide permettant une utilisation interactive, certains compro-

mis concernant la précision du phénomène de solidification ont été faits. L’approche n’utilise

pas les équations de simulation de fluide pour calculer le mouvement de l’eau sur les objets.

L’approche proposée permet plutôt une modélisation qui soit proche de la réalité sans toutefois

être basée sur une simulation physique. Le résultat sortant ne peut être considéré comme étant

une représentation physiquement précise. L’approche proposée est un compromis entre fidélité,

et esthétisme, efficacité et contrôle.

Page 53: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

CHAPITRE 6

TRAVAUX FUTURS

L’approche proposée est rapide, mais n’est pas instantanée. L’utilisateur peut avoir une bonne

idée du résultat final à partir des trajectoires qui sont calculées en moins d’une seconde. Par

contre, la construction de la surface peut prendre beaucoup plus de temps. Une solution pour

corriger ce problème serait de procurer une prévisualisation de la surface sans l’utilisation des

metaballs qui prend du temps. Le calcul de la surface finale devrait être aussi accéléré. Au lieu

d’utiliser des metaballs, le calcul direct du maillage de la stalactite pourrait être investigué.

La création de la surface verglacée est elle aussi assez lourde en temps de calcul. En même

temps, comme mentionné dans la section 3.1, une surface alternative est parfois requise pour

calculer le parcours de l’eau. Une approche unifiée adaptée à partir de la méthode de recons-

truction de la surface devrait être développée, avec le temps de calcul et le lissage de la surface

en tête.

L’approche proposée traite essentiellement de la modélisation de la surface des stalactites de

glace sans gérer le rendu. Il serait intéressant de développer, à l’instar de la méthode de Kim et

al. (2006), une manière de rendre les stalactites de façon réaliste et rapide. En effet, afin de

générer une image réaliste qui respecte les phénomènes optiques que sont la réflexion et la

réfraction, caractéristiques de la glace, un lancer de rayon doit être utilisé. Malheureusement,

cette technique de rendu est très lourde en temps de calcul. De plus, il existe plusieurs types

de surface de glace : mouillé, sec, sale, etc. Il n’existe aujourd’hui aucune méthode gérant tous

ces types de rendu de façon efficace. Maintenant que la modélisation de stalactite de glace peut

être effectuée rapidement et interactivement, le moment est venu de s’attaquer au rendu.

Page 54: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

CONCLUSION

L’approche proposée démontre qu’il est possible de subdiviser un problème complexe, tel que

la simulation de la formation de stalactites de glace, en plusieurs étapes interactives. Dans

l’approche proposée, le processus de glaciation est décomposé en quatre étapes. La première

étape consiste à déterminer comment l’eau parcourt la surface de l’objet. Elle est composée

de deux sous étapes : définir l’approvisionnement d’eau et parcourir la surface en calculant

les coefficients d’eau. L’approche proposée effectue efficacement le parcours de sommet en

sommet et le calcul peut être facilement parallélisé.

La deuxième étape permet de déterminer les points de chute. Elle est composée de deux sous-

étapes : déterminer les régions de chute et positionner les points de chute. Les régions de chutes

sont formées de polygones où les points de chute sont ensuite positionnés aléatoirement.

La troisième étape génère les trajectoires des stalactites de glace. Un L-System a été défini à cet

effet. Il permet de faire une très grande variété de croissance de glace. L’utilisateur peut ainsi

changer la courbure, la probabilité de division, l’angle de roulis de départ et la dispersion des

branches. De plus, la détection de collision entre la trajectoire et d’autres surfaces est supportée.

La quatrième étape est la construction de la surface. Une surface est construite autour de chaque

trajectoire précédemment générée. Le rayon de la surface est défini à l’aide d’une fonction de

profil. Grâce à celle-ci, l’ondulation et la forme conique de la surface peuvent être modifiées

par l’utilisateur. Une perturbation aléatoire est utilisée sur le positionnement des metaballs afin

de créer une ondulation plus plausible. Des metaballs sont ensuite utilisées afin de gérer la

fusion entre plusieurs stalactites. Finalement, la surface peut être recouverte de différents types

de verglas à l’aide d’une équation qui gère l’épaisseur de la glace sur la surface.

L’avantage de cette division en étapes est le contrôle et l’interactivité : l’utilisateur a accès à

plusieurs paramètres et peut voir le résultat de la modélisation en quelques secondes. Chacune

des étapes est relativement rapide. Le temps de calcul total est considérablement plus rapide

Page 55: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

46

qu’une simulation basée sur la physique. Le résultat est une modélisation photo réaliste de

stalactites de glace semblable aux résultats d’une simulation physiquement correcte.

Page 56: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

ANNEXE I

METABALL

Les metaballs font partie de la famille des surfaces implicites. La forme de la surface composée

de n metaballs est définie par l’équation suivante :

f (x,y,z) =n

∑i=0

qi fi −T0 = 0 (I.1)

où T0 est un seuil constant, qi est la densité maximum et fi est la fonction de densité de la

metaball i. Il existe plusieurs fonction fi dans la littérature. Celle qui est utilisée dans ce travail

est celle de Wyvill et al. (1986) qui est décrite comme suit :

fi(r) =−4

9

(rRi

)6

+17

9

(rRi

)4

− 22

9

(rRi

)2

+1 (I.2)

où r est la distance entre le point (x,y,z) et le centre de la metaball. Ri est le rayon d’unfluence

de la metaball i.

Comme il est possible de le voir sur la figure I.1, l’utilisation de metaballs, possédant ici des

rayons identiques, permet de déformer les surfaces de deux sphères et même de les fusionner

en fonction de la distance qui le sépare. Pour plus d’information sur les metaballs, se référer à

l’article de Wyvill et al., (1986).

Page 57: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

48

Figure I.1 Différentes interactions entre deux metaballs

Page 58: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

ANNEXE II

L-SYSTEM

1 Définition d’un L-System

Un L-system (ou système de Lindenmayer ) est une grammaire formelle permettant de décrire

le processus de croissance d’êtres vivants. Il a été conçu à l’origine comme une théorie ma-

thématique du développement des plantes. Le concept central des L-System est la réécriture.

Le but est de générer une chaîne de caractère et ensuite de l’interpréter comme une suite de

commande qui contrôle une tortue. Pour de plus amples informations, il est suggéré au lecteur

le livre de référence Algorithmic beauty of plants de Prusinkiewicz et Lindenmayer (1990). Les

figures qui se trouvent dans cette annexse ont été produites chez Mokko Studio.

2 Les variables

Un L-System est défini par une prémisse ω et un ensemble de règles de réécriture du système

notée P. Une production est noté a −→ b. a est appelé le prédécesseur et b le successeur.

Page 59: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

50

3 Interprétation de la tortue

Afin de créer un résultat graphique, la chaîne caractère générée par le L-System doit être inter-

prétée. À cet effet, plusieurs symboles sont utilisés afin de dessiner le résultat à l’aide de ce qui

est appelé une tortue. Ces symboles sont les suivants :

a : angle utilisée lors des déplacements de la tortue

d : longueur des pas de la tortue

n : nombre de génération

F : se déplacer d’un pas d’une distance de d en dessinant une ligne

f : se déplacer d’un pas d’une distance de d sans dessiner de ligne

+ : tourner à gauche de l’angle a

- : tourner à droite de l’angle a

& : pivoter vers le bas d’un angle a

∧ : pivoter vers le haut d’un angle a

\ : roulis à gauche de l’angle a

/ : roulis à droite de l’angle a

| : tourner sur soi-même de 180◦

[] : création d’une branche

Lorsque l’utilisateur veut utiliser un angle autre que l’angle a, il lui faut utiliser des paranthèses

à la suite de l’opération. Par exemple, pour tourner à gauche de 90◦, il faut écrire +(90).

Page 60: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

51

4 Courbe de Koch

Afin de visualiser ce qu’il est possible de créer à l’aide d’un L-System, voici l’exemple de la

courbe de Koch :

a : 90◦

ω = F

p1 : F −→ F +F −F −F +F

Le résultat de la réécriture après zéro génération de la règle P1 est le suivant :

n = 0 : F

Après une génération de la règle P1 :

n = 1 : F+F-F-F+F

Après deux générations de la règle P1 :

n = 2 : F+F-F-F+F + F+F-F-F+F - F+F-F-F+F - F+F-F-F+F + F+F-F-F+F

Et ainsi de suite :

n = 3 : F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F-F+F+F+F-F-F+F + F+F-F-F+F+F+F-F-

F+F-F+F-F-F+F-F+F-F-F+F+F+F-F-F+F - F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F-F+F+F+F-

F-F+F - F+F-F-F+F+F+F-F-F+F-F+F-F-F+F-F+F-F-F+F+F+F-F-F+F + F+F-F-F+F+F+F-F-

F+F-F+F-F-F+F-F+F-F-F+F+F+F-F-F+F

Lorsque les symboles sont générés, il est maintenant possible de les interpréter afin d’avoir un

résultat graphique. L’interprétration des symboles par la tortue est illustrée sur la figure II.1.

Pour plus d’exemple sur l’interprétation graphique de la tortue, voir Prusinkiewicz et Linden-

mayer (1990), chapitre 1.

Page 61: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

52

#����

#���

#���$

#���!

Figure II.1 Courbe de Koch.

5 Probabilité des règles

Dans le cas où le L-System est composé de plusieurs règles avec le même prédécesseur, une

variable de probabilité peut être affectée à chacune de ces règles. Par exemple, deux règles P1

et P2 notées comme suit :

p1 : a −→ ba

p2 : a −→ ca

Page 62: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

53

Lorsqu’il y a plusieurs instances de la même règle, il est possible de spécifier la probabilité que

chacune d’elles soient utilisées à chaque génération. Par exemple, pour P1′ et P1′′ ayant une

probabilité de 33% et de 66% respectivement, la notation est la suivante :

p1′ : a .33−→ ba

p1′′ : a .66−→ ca

6 L’angle d’or

L’angle d’or 137,5 est très souvent utilisé dans les L-System afin d’avoir une croissance répartie

de façon homogène dans l’espace. Par exemple, pour la création de pétales, le L-System suivant

peut être utilisé :

ω : a(0)

P1(n) : a(n)−→+(137.5) f (n∧0.5)Ja(n+1)

où J est la variable permettant de dessiner un cercle. Grâce à l’utilisation de l’angle d’or, il est

possible de constater que l’évolution de la création des pétales (en bleu sur la figure II.2) donne

un résultat naturel.

Figure II.2 Utilisation de l’angle d’or.

Page 63: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

LISTE DE RÉFÉRENCES

Dorsey, J., Hans Køhling Pedersen, et Pat Hanrahan, 1996. Flow and changes in appearance.

Proc. of 23rd annual conference on Computer graphics and interactive techniques, SIG-

GRAPH ’96, pages 411–420. ACM.

Fournier, P., Arash Habibi, et Pierre Poulin, 1998. Simulating the flow of liquid droplets. Proc.Graphics Interface 98, pages 133–42. Canadian Inf. Process. Soc.

Gibou, F., Ronald Fedkiw, Russel Caflisch, et Stanley Osher, 2003. A level set approach for

the numerical simulation of dendritic growth. J. Sci. Comput., vol. 19, pages 183–199.

Kharitonsky, D. et Jakob Gonczarowski, February 1993. A physically based model for icicle

growth. The Visual Computer., vol. 10, pages 88–100.

Kim, T. et Ming C. Lin, 2003. Visual simulation of ice crystal growth. Proceedings of the 2003ACM SIGGRAPH/Eurographics symposium on Computer animation, SCA ’03, pages

86–97. Eurographics Association.

Kim, T., Michael Henson, et Ming C. Lin, 2004a. A hybrid algorithm for modeling ice for-

mation. Proc. of ACM SIGGRAPH/Eurographics symposium on Computer animation,

SCA ’04, pages 305–314. Eurographics Association.

Kim, T., Michael Henson, et Ming C. Lin, 2004b. A physically based model of ice. ACMSIGGRAPH 2004 Sketches, SIGGRAPH ’04, pages 13–, New York, NY, USA, 2004b.

ACM.

Kim, T., David Adalsteinsson, et Ming C. Lin, 2006. Modeling ice dynamics as a thin-film

stefan problem. Proc.of ACM SIGGRAPH/Eurographics symposium on Computer ani-mation, SCA ’06, pages 167–176. Eurographics Association.

Maeno, N., L. Makkonen, K. Nishimura, K. Kosugi, et T. Takahashi, 1994. Growth rates of

icicles. Journal of Glaciology, vol. 40, pages 319–326.

Makkonen, L., 1988. A model of icicle growth. Journal of Glaciology, vol. 34, pages 64–70.

Matsumura, M. et Reiji Tsuruno, 2005. Visual simulation of melting ice considering the natural

convection. ACM SIGGRAPH 2005 Sketches, SIGGRAPH ’05, New York, NY, USA,

2005. ACM.

Prusinkiewicz, P. et Aristid Lindenmayer, 1990. The algorithmic beauty of plants. Springer-

Verlag New York, Inc., New York, NY, USA.

Short, M. B., J. C. Baygents, J. W. Beck, D. A. Stone, et R. E. Goldstein, 2005. Stalactite

growth as a free-boundary problem : A geometric law and its platonic ideal. PhysicalReview Letters 94, vol. 1, pages 1–4.

Page 64: ÉCOLE DE TECHNOLOGIE SUPÉRIEURE UNIVERSITÉ ...Jonathan GAGNON MODÉLISATION PROCÉDURALE DE STALACTITES DE GLACE MONTRÉAL, LE 26 MAI 2011 c Tous droits réservés, Jonathan Gagnon,

55

Szilder, K. et E. Lozowski, 1994. An analytical model of icicle growth. Annals of Glaciology,

vol. 19, pages 141–145.

Tirmizi, S. H. et W. N. Gill, 1987. Effect of natural convection on growth velocity and mor-

phology of dendritic ice crystals. Journal of Crystal Growth, vol. 85, pages 488–502.

Tong, R., Kazufumi Kaneda, et Hideo Yamashita, 2002. A volume-preserving approach for

modeling and animating water flows generated by metaballs. The Visual Computer, vol.

18, pages 469–480.

Wang, H., Peter J. Mucha, et Greg Turk, July 2005. Water drops on surfaces. ACM Trans.Graph., vol. 24, pages 921–929.

Wyvill, G., Craig McPheeters, et Brian Wyvill, 1986. Data structure for soft objects. The VisualComputer, vol. 2, pages 227–234. ISSN 0178-2789.

Yu, Y.-J., Ho-Youl Jung, et Hwan-Gue Cho, 1999. A new water droplet model using metaball

in the gravitational field. Computers and Graphics, vol. 23, pages 213–222.