Objet mou

Objet mou

Metaballs

Deux metaballs

Les metaballs sont une technique utilisée en infographie pour créer des formes organiques ou représenter des fluides. En français, on trouve également la dénomination « objets mous ». Les metaballs sont une variante des soft objects mais le nom s'est imposé dans la littérature et dans les logiciels. Ce concept a été inventé par Jim Blinn au début des années 80.

Chaque balle est définie comme un fonction mathématique à N dimensions. Les plus courantes sont en trois dimensions, on définit alors la fonction f(x,y,z)~. Cette fonction retourne un scalaire et permet de définir un champ scalaire. Une valeur de seuil est ensuite choisie pour délimiter la surface. Il est possible de mélanger plusieurs balles qui vont mutuellement s'influencer et contribuer aux valeurs du champ scalaire.

\sum_{i=0}^n \mathit{metaball}_i(x,y,z) \leq \mathit{seuil}

indique si le point (x,y,z)~ se trouve à l'intérieur du volume confiné par la surface.

Sommaire

Exemples de fonctions

Une fonction typique pour des metaballs est f(x,y,z) = \frac{1}{(x-x_0)^2 + (y-y_0)^2 + (z-z_0)^2}~, où (x_0, y_0, z_0)~ est le centre de la balle. La division rend cependant cette fonction assez lente à calculer. On peut utiliser à la place des approximations polynômiales.

Voilà quelques propriétés que peut avoir cette fonction :

  • si l'on cherche à faire des sphères, il faut que la fonction ne dépende que de la distance :  d = \sqrt{(x-x_0)^2 + (y-y_0)^2 + (z-z_0)^2}~.
  • si l'on cherche à créer une surface continue, il faut que la fonction soit continue.
  • si l'on cherche à créer une surface lisse (sans rupture de pente), il faut que la fonction soit à dérivée continue.
  • si l'on cherche à créer une surface avec des reflets continus, il faut que la fonction soit à dérivée seconde continue.

Pour pouvoir accélérer les calculs, il peut être intéressant d'avoir une fonction nulle au-delà d'une certaine distance, pour que les metaballs n'influent l'une sur l'autre qu'à une distance raisonnable. Dans ce cas pour avoir de jolies metaballs (continues, lisses et sans rupture des reflets) avec des polynômes, la fonction la plus simple est : f(x,y,z) = g(d) = (d_{max}^2 - d^2)^3~ si d < d_{max}, 0~ sinon.

Plusieurs méthodes existent pour afficher des metaballs. Elles dépendent du résultat désiré :

  • force brute discrète : on évalue un grand nombre de points (x,y,z) et on affiche le résultat en fonction de l'appartenance au volume
  • lancer de rayon : on projete un rayon dans la scène et on calcule les intersections avec la surface de l'objet
  • marching cubes : on divise la scène en une multitude de cubes. Chaque cube et ses valeurs du produit scalaire aux sommets sont analysés et des triangles sont générés en fonction de 256 configurations possibles.

Variantes

Une des nombreuses et des plus rapides méthode de calcul et d'affichage de metaballs 2D.

Les metaballs existent en deux dimensions, utilisant alors une superposition de sprites modifiés (addition et posterisation par exemple) ou l'algorithme des marching squares pour l'affichage de la surface pleine. Ces metaballs sont bien moins gourmandes à calculer que la version en trois dimensions, et permettent un plus grand nombre d'améliorations, pour un résultat bien évidemment moins réaliste. Un effet de bump peut être ajouté pour donner une impression de 3D.

Les metaballs étant calculées via la production d'un champ scalaire, des variantes sont apparues comme les metatores, metaplans, ainsi qu'une variété d'objets plus ou moins faciles à définir mathématiquement de manière implicite.

Les metaballs ressemblent à des sphères qui se mélangent doucement, mais en changeant la norme avec laquelle on travaille on peut obtenir des ellipsoïdes, des cubes, des parallélépipèdes rectangles ou des cylindres. Pour cela on peut utiliser les mêmes fonctions de la distance d~, mais en prenant non pas la distance euclidienne mais la distance associée à la norme 1 ou à d'autres normes qui vont alors déformer l'espace. Il est même tout à fait possible de mélanger dans un même champs des metaballs et des metacubes ou autre metavolume.

 \frac{1}{(x-1)^2 + (y-1)^2 + (z-1)^2} + \frac{1}{\max(|x|, |y|, |z|)^2} \leq seuil définit une metaball proche d'un metacube.

Références

  • Blinn, James F.  "A Generalization of Algebraic Surface Drawing." ACM Transactions on Graphics 1(3), July 1982, pp. 235–256.

Liens externes

  • Portail de l’informatique Portail de l’informatique
Ce document provient de « Metaballs ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Objet mou de Wikipédia en français (auteurs)

Игры ⚽ Нужна курсовая?

Regardez d'autres dictionnaires:

  • Objet Herbig-Haro — L objet Herbig Haro HH47, vu par le télescope spatial Hubble. La barre d échelle représente 1000 ua, soit environ 20 fois la dimension du système solaire En astronomie, les objets Herbig Haro (ou objets HH) sont de petites nébulosités associées à …   Wikipédia en Français

  • Objet compact — En astronomie, le terme d objet compact désigne en général un astre de haute densité tel qu un résidu de l évolution stellaire. Une étoile à neutrons (incluant les pulsars), un trou noir, ou, si elles existent, les étoiles étranges sont des… …   Wikipédia en Français

  • Sursauteur gamma mou —  Ne pas confondre avec sursaut gamma, un phénomène beaucoup plus énergétique. Un Sursauteur gamma mou, ou, en anglais, Soft gamma repeater (ou SGR) est une source astrophysique de rayons gamma connaissant des épisodes d émission violents,… …   Wikipédia en Français

  • Nu Mou — Races de Final Fantasy  Cet article concerne les races de la série de jeu Final Fantasy. Pour les races considérées comme animales et les monstres, voir Monstres de Final Fantasy. Dans la série de jeu vidéo Final Fantasy, les personnages que …   Wikipédia en Français

  • Tissu mou — Un tissu mou est un tissu servant à supporter les structures et les organes du corps comme les muscles, les vaisseaux sanguins ou les tissus adipeux. Ces tissus peuvent faire l objet de tumeurs cancéreuses, voir Sarcome des tissus mous. Portail… …   Wikipédia en Français

  • mollement — [ mɔlmɑ̃ ] adv. • XIIIe; de mol, mou 1 ♦ Sans vigueur, sans énergie. ⇒ faiblement. Travailler mollement, sans ardeur, sans empressement. Réclamer qqch. mollement, avec mollesse, sans conviction. ⇒ timidement. 2 ♦ Avec douceur et lenteur, avec un… …   Encyclopédie Universelle

  • Choc hémodynamique — Collapsus Le terme collapsus désigne de manière générale un effondrement (to collapse signifie « s effondrer » en anglais). Le verbe correspondant, « collaber », s utilise en général pour désigner un objet mou et creux qui se… …   Wikipédia en Français

  • Collapsus — Le terme collapsus désigne de manière générale un effondrement (participe passé latin de collābī, tomber ensemble, tomber en ruine). Le verbe correspondant, « collaber », s utilise en général pour désigner un objet mou et creux qui se… …   Wikipédia en Français

  • Etat de choc — Collapsus Le terme collapsus désigne de manière générale un effondrement (to collapse signifie « s effondrer » en anglais). Le verbe correspondant, « collaber », s utilise en général pour désigner un objet mou et creux qui se… …   Wikipédia en Français

  • écraser — vt. , piler, broyer, fouler, piétiner ; détruire (une récolte) ; (en plus à Arvillard), anéantir : étl(y)afâ (Magland.145, Saxel.002), étyafâ (Morzine), dyofâ (Albanais.001, Annecy.003, Balme Si.020), C. é dyôfe <il écrase> (001) ||… …   Dictionnaire Français-Savoyard

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”