Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

39
Florian Aleman, Renaud Guiot-Bourg & Olivier Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques Fouques

Transcript of Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Page 1: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Florian Aleman, Renaud Guiot-Bourg & Olivier FouquesFlorian Aleman, Renaud Guiot-Bourg & Olivier Fouques

Page 2: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

1.1. Types de fluidesTypes de fluides

2.2. Physique des fluidesPhysique des fluides

3.3. Techniques d’animationTechniques d’animation

4.4. Techniques de simulationTechniques de simulation

PlanPlan

Page 3: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

FluideFluide

Définition : Les fluides sont des milieux matériels parfaitement déformables.

On regroupe sous cette appellation les gaz et les liquides.

Page 4: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Un fluide peut être considéré comme étant formé d'un grand nombre de particules matérielles, très petites et libres de se déplacer les unes par rapport aux autres.

Dans un gaz, les interactions entre particules sont négligeables, sauf lorsqu'elles se rencontrent (chocs).

Dans un liquide, les molécules sont très proches les unes des autres.Ce type d'interaction explique les propriétés physiques et chimiques des liquides.

FluideFluide

Page 5: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

1. Types de fluides1. Types de fluides

Plusieurs caractéristiques :

1.11.1 Compressibilité

1.21.2 Viscosité

Page 6: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

1.1 Compressibilité1.1 Compressibilité

La compressibilité d'un fluide mesure la variation de volume d'une certaine quantité de ce fluide lorsqu'il est soumis à une pression extérieure.

Différence entre gaz et liquide.

Exemple : pompe à vélo

Page 7: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

On considère souvent que les liquides sont incompressibles. En termes mathématiques, cela signifie que la masse volumique d'un tel fluide est supposée constante.

Simplification des équations de la mécanique des fluides.

1.1 Compressibilité1.1 Compressibilité

Page 8: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

1.2 Viscosité1.2 Viscosité

La viscosité peut être défini comme étant la résistance à l'écoulement uniforme et sans turbulence se produisant dans la masse d'une matière.

2 grandes familles : "newtoniens" et "non newtoniens".

Page 9: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Les fluides "newtoniens", comme l'eau, l'air et la plupart des gaz, présentent une viscosité constante (ou qui ne peut varier qu'en fonction de la température).

Les fluides "non newtoniens" ont la particularité d'avoir une viscosité variable, leur déformation n'est pas directement proportionnelle à la force qu'on leur applique.

Exemple : le sable mouillé

1.2 Viscosité1.2 Viscosité

Page 10: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Les principes de base du comportementdes fluides

2.12.1 Statique des fluides

2.22.2 Dynamique des fluides

2. Physique des fluides2. Physique des fluides

Page 11: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

On parle de fluide au repos.

Pression de fluide : Tous les fluides exercent sur toutes les surfaces avec lesquelles ils sont en contact, des forces pressantes perpendiculaires en tout point à ces surfaces.

Exemple : poussée d’archimède Solide

Liquide

2.1 Statique des fluides2.1 Statique des fluides

Page 12: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

On parle de fluide en mouvement.

2.2.12.2.1 Fluides parfaits

2.2.22.2.2 Fluides visqueux

2.2 Dynamique des fluides2.2 Dynamique des fluides

Page 13: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Un fluide est considéré comme parfait si l'on peut négliger sa viscosité : il s'écoule alors sans frottement.

2 modèles différents de description du mouvement : Euler et Lagrange

2.2.1 Fluides parfaits2.2.1 Fluides parfaits

Page 14: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

L'écoulement d'un fluide visqueux dans un tuyau peut être de deux types : laminaire ou turbulent. La transition entre ces deux régimes dépend de la vitesse, de la densité et de la viscosité du fluide, ainsi que du diamètre du tuyau.

L'écoulement d'un fluide visqueux dans un tuyau peut être de deux types : laminaire ou turbulent.

La transition entre ces deux régimes dépend de la vitesse, de la densité et de la viscosité du fluide, ainsi que du diamètre du tuyau.

2.2.2 Fluides visqueux2.2.2 Fluides visqueux

Page 15: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

3. Techniques d’animations3. Techniques d’animations

3.13.1 Animation de surfaces d’eaux

3.23.2 Transformation de solides en fluides

3.33.3 Animation de fluides viscoélastiques

Page 16: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

3.13.1 Animation de surfaces d’eauxAnimation de surfaces d’eaux L’eau est présente partout dans notre environnement

Représente l’un des plus gros challenge en matière d’animation graphique

Développement récent des films d’animations 3D qui ont besoin de modéliser le comportement de l’eau

• Shrek : présence d’eau, de boue, de lait, de bière, etc.

Jeffrey Katzenberg, producteur de Shrek: « La chose la plus difficile à réaliser dans Shrek aura été l’écoulement du lait dans un verre » (Hiltzik and Pham 2001)

• Nombreux autres applications : surface de la mer, chute d’un solide dans un liquide, etc.

Page 17: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

3.13.1 Animation de surfaces d’eauxAnimation de surfaces d’eaux Un des problèmes les plus difficiles : modéliser l’écoulement de l’eau (ou un liquide

semblable) dans un verre

Douglas Enright, Stephen Marschner et Ronald Fedkiw proposent une méthode appelée inspirée de la méthode de modélisation d’un volume présentée en 2001 par Foster & Fedkiw

• La clef est que le spectateur visualise bien le traitement effectué à la frontière entre l’eau et l’air

• Méthode se basant sur les équations de Navier-Stokes pour les liquides

Source: D. Enright, S. Marschner et R. Fedkiw: Animation and Rendering of Complex Water Surfaces

Page 18: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

3.13.1 Animation de surfaces d’eauxAnimation de surfaces d’eaux Foster & Fedkiw, 2001 : Un volume simulé numériquement est définit par une

fonction

• représente le liquide• représente l’air

Chaque cellule possède plusieurs caractéristiques qui servent à définir le fluide dans son ensemble :

• est la densité du fluide• est la pression• fonction définissant le volume

Source: D. Enright, S. Marschner et R. Fedkiw: Animation and Rendering of Complex Water Surfaces

Page 19: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

3.13.1 Animation de surfaces d’eauxAnimation de surfaces d’eaux Enright, Marschner & Fedkiw : Trois étapes pour la mise a jour de , , et du vecteur vitesse en

chaque point de la scène

I.I. Une méthode d’extrapolation est appliquée à la surface courante pour contrôler le comportement du vecteur vitesse en chaque point:

Où représente la composante x du vecteur vitesse , est un vecteur unitaire perpendiculaire à la surface implicite du volume et représente le temps fictif.

Des méthodes similaires existes pour les composantes y et z du vecteur vitesse.

Source: D. Enright, S. Marschner et R. Fedkiw: Animation and Rendering of Complex Water Surfaces

Page 20: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

II.II. On met à jour les valeurs de , et grâce à la méthode semi-Lagrangienne appelée “stable fluids”.

III.III. Le champs d’accélération des différents points du volume est calculé grâce aux nouvelles valeurs mises à jour précédemmentCette étape s’effectue grâce à l’équation de Navier-Stokes:

Où représente la viscosité du fluide, sa densité, sa pression et correspond aux forces extérieures s’appliquant en chaque point, telle que la gravité par exemple

Source: D. Enright, S. Marschner et R. Fedkiw: Animation and Rendering of Complex Water Surfaces

3.13.1 Animation de surfaces d’eauxAnimation de surfaces d’eaux

Page 21: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Illustration des résultats obtenus

Méthode de Enright, Marschner & Fedkiw Méthode de Foster & Fedkiw, 2001

3.13.1 Animation de surfaces d’eauxAnimation de surfaces d’eaux

Page 22: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

3.2 Transformation de solides en 3.2 Transformation de solides en fluidesfluides

La plupart des matériaux ne peuvent être clairement classifies comme solides ou fluides

Les surfaces solides sont souvent très détaillées, alors que les surfaces des fluides sont lissées à cause des tensions crées à la surface

La transformation d’un solide en fluide fait disparaitre les détails, alors que le fluide se transformant en solide doit les conserver.

Exemple de transformation d’un solide en fluide

Page 23: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Le calcul du déplacement des points appartenant à la forme s’effectue de la manière suivante :

Pour un fluide:

Pour un solide:

Où représente la densité du matériaux, la densité des forces internes au corps dues aux tensions, le déplacement des coordonnées du matériaux, la vélocité (vitesse).

Source: A Unified Lagrangian Approach to Solid-Fluid Animation, R.KEISER

3.2 Transformation de solides en 3.2 Transformation de solides en fluidesfluides

Page 24: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Mais on ne peut pas efficacement différencier une particule comme faisant partie d’un solide ou d’un liquide…

On réécris les équations précédentes pour pouvoir l’appliquer a toute particule faisant partie de notre animation:

La différenciation se fait sur les fonctions et , mais a quoi correspondent elles?

Source: A Unified Lagrangian Approach to Solid-Fluid Animation, R.KEISER

3.2 Transformation de solides en 3.2 Transformation de solides en fluidesfluides

Page 25: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

La tension élastique :

C’est une force qui s’applique à tout solide pour mesurer la façon dont les particules qui forment un solide s’attirent entre elles. Elle permet donc de représenter la manière dont un solide va se déformer.

Le tenseur de déformation :

C’est une fonction servant à décrire l’état de déformation local résultant de contraintes. Dans notre cas, dépend directement des forces de pression et de viscosité. Cela permet donc de modéliser le comportement d’un fluide.

Source: A Unified Lagrangian Approach to Solid-Fluid Animation, R.KEISER

3.2 Transformation de solides en 3.2 Transformation de solides en fluidesfluides

Page 26: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.
Page 27: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

3.33.3 Animation de fluides Animation de fluides viscoélastiquesviscoélastiques

Un fluide viscoélastique est un fluide se comportant comme si il était composé d’un solide élastique et d’un fluide visqueux où l’écoulement serait dépendant de certains paramètres (température, charge, etc.)

Exemples: mucus, gélatine, gels, savons liquides, etc.

Technique se basant sur des méthodes Eulériennes pour animer des fluides avec des surfaces libres

Exemple d’éclaboussement dans un fluide viscoélastique

Source: A Method for Animating Viscoelastic Fluids, Tolga G. Goktekin, Adam W. Bargteil, James F. O’Brien

Page 28: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

3.33.3 Animation de fluides Animation de fluides viscoélastiquesviscoélastiques

Principe: le comportement d’un fluide viscoélastique est régit par une modification des équations de Navier-Stokes

On ajoute un paramètre qui représente la tension élastique d’un point dans l’espace

En tout point du fluide, l’accélération du fluide est alors calculée par l’équation:

Où représente le déplacement des coordonnées du fluide, la pression du matériaux, sa densité, son coefficient de viscosité, son élasticitéEnfin, inclus toutes les autres forces comme la gravité.

Source: A Method for Animating Viscoelastic Fluids, Tolga G. Goktekin, Adam W. Bargteil, James F. O’Brien

Page 29: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

3.33.3 Animation de fluides Animation de fluides viscoélastiquesviscoélastiques

Exemple de comportements de fluides ayant différentes viscosités :

Plus sa viscosité augmente, moins l’accélération de chaque particule du fluide est importante.Cela a pour effet de limiter les éclaboussures à la surface du fluide

Source: A Method for Animating Viscoelastic Fluids, Tolga G. Goktekin, Adam W. Bargteil, James F. O’Brien

Page 30: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

3.33.3 Animation de fluides Animation de fluides viscoélastiquesviscoélastiques

Autre exemple de fluide viscoélastique :

La force de gravité entraine le fluide vers le bas jusqu’à que sa masse ne soit plus assez importante pour le faire tomber.

Page 31: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

4. Simulation d’eau en temps 4. Simulation d’eau en temps réelréel

Contraintes du temps réel : Peu couteuse : CPU -> GPU Peu gourmande en mémoire Stabilité : différence avec animations Réalisme

Page 32: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

4.14.1 L’eau procédurale (Procedural Water)

4.24.2 Heightfield Fluids

4.34.3 Fluides à base de particules (Particle Based Fluids)

4. Simulation d’eau en temps 4. Simulation d’eau en temps réelréel

Page 33: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

4.1 L’eau procédurale4.1 L’eau procéduralePrincipe :

Utilisation de la physique pour pré-calculer des textures et les animer

Utilité : Pour représenter de vastes étendues océaniques ou de

l’eau sans interaction physique avec le jeu

Page 34: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Avantage : Peu gourmand en ressources Facilement contrôlable

Inconvénient : Difficulté d’obtenir un interaction entre l’eau et la côte ou

un corps immergé.Utilisée dans la plupart des jeux aujourd’huiDémo (Ogre 3D)

4.1 L’eau procédurale4.1 L’eau procédurale

Page 35: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

4.2 4.2 Heightfield FluidsHeightfield FluidsPrincipe :

Cette technique consiste à modifier en temps réel un maillage représentant la surface de l’eau

Une valeur unique z pour (x,y)

Page 36: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Utilité : Calcul en temps réel des vagues causées par des

interactions physiques sur de petites étendues d’eauAvantage :

Interaction avec corps immergéInconvénient :

Une valeur par (x,y) donc pas possible de faire des rouleauxDémo (Ogre 3D)

4.2 4.2 Heightfield FluidsHeightfield Fluids

Page 37: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Principe : Utilisation de particules Particules stockent la masse, la position, la vitesse,

des forces extérieures, la durée de vieUtilité :

Pour traiter les situations où le fluide gicle ou s’écoule de façon turbulente

4.3 4.3 Fluides à base de particulesFluides à base de particules

Page 38: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

Avantage : Interaction entre les particules et avec l’environnement

Inconvénient : Limité à de petites surfaces

Vidéo

4.3 4.3 Fluides à base de particulesFluides à base de particules

Page 39: Florian Aleman, Renaud Guiot-Bourg & Olivier Fouques.

ConclusionConclusionBonne connaissance de la physique des fluides

Très beaux rendus en animation

Temps réel très couteux

Questions?