NVIDIA - cheveux temps réel - Interactive Hair Simulation on the GPU Using ADMM
Accueil » NVIDIA accélère la simulation de cheveux grâce à l’IA

NVIDIA accélère la simulation de cheveux grâce à l’IA

Cet article est également disponible en: English

Malgré des progrès massifs sur le plan technique, les cheveux et poils restent un défi pour l’animation 3D. Sans même parler de rendu, la simulation des cheveux nécessite de prendre en compte gravité, vent, interactions avec des éléments externes comme l’épaule du personnage. Les calculs associés sont très lourds et prennent énormément de temps. Simuler physiquement ces effets en temps réel est donc exclu.

Pour créer un groom (une coiffure virtuelle) destinée à un film d’animation, la solution sera typiquement de travailler sans gestion de la physique. L’artiste va ajuster les mèches via des curves (des courbes), jusqu’à obtenir une coiffure satisfaisante. Ce n’est qu’ensuite que le comportement dynamique sera appliqué, ce qui peut créer quelques surprises. Une fois la gravité appliquée, par exemple, la coiffure risque de changer d’aspect de façon non désirée.

NVIDIA dévoile sa simulation de cheveux sur GPU

Gilles Daviet de NVIDIA France propose une approche alternative de simulation de cheveux avec la technique dévoilée dans Interactive Hair Simulation on the GPU using ADMM, publication sélectionnée pour le SIGGRAPH 2023. L’idée est d’utiliser de l’intelligence artificielle (plus précisément, de la physique neuronale, ou « neural physics ») pour prédire la manière dont un objet se comporterait dans le monde réel.

Le résultat : des performances en nette hausse. Voici un aperçu du résultat, proche du temps réel sur la coiffure choisie pour la démo :

Des performances prometteuses

Les résultats sont très encourageants, mais restent évidemment loin des performances d’un jeu vidéo : ce n’était de toutes façons pas le but.
En pratique, Gilles Daviet de NVIDIA a fait des tests sur différentes scènes. Le temps de calcul par frame varie de 0.2s environ à près de 8 secondes. Une variabilité qui dépend de facteurs comme le nombre et la longueur des cheveux, ou la précision de la gestion des collisions. Côté mémoire, la publication indique des pics allant de 1Go à 2×9.5Go environ (en dual GPU) selon la scène.

NVIDIA - cheveux temps réel - Interactive Hair Simulation on the GPU Using ADMM
Trois des scènes de test de la publication. Les graphiques indiquent la répartition du temps de calcul sur les 20 premières frames.
NVIDIA - cheveux temps réel - Interactive Hair Simulation on the GPU Using ADMM
D’autres scènes de test. Sur la troisième ligne, on constate des noeuds, qui surviennent en raison de l’utilisation d’une version simplifiée de la gestion des collisions.

Au vu des performances, la méthode proposée permet d’envisager plusieurs applications concrètes.

Gilles Daviet évoque par exemple l’ajustement avec simulation physique d’un groom existant : dans l’outil de démonstration qu’il a mis en place, l’artiste peut déplacer des mèches manuellement, couper les cheveux, changer globalement leur longueur ou ajuster la courbure des boucles. La publication donne plus de détails sur les compromis et optimisations permettant d’envisager ce genre d’usage. En particulier, l’idée est de ne simuler qu’une partie des cheveux, et d’alléger la gestion physique. Grâce à ce type d’astuce, manipuler une coiffure avec environ 86 000 curves (8600 curves simulées soit 120 000 vertices) peut se faire en temps réel (figure 1 ci-dessous).

NVIDIA - cheveux temps réel - Interactive Hair Simulation on the GPU Using ADMM

Une autre application possible de la publication serait de faire de l’édition procédurale : à partir d’un groom de départ, le simulateur effectue différentes actions basiques (ajustement de la longueur, application de forces externes, etc) pour générer de nombreuses variantes. Comme le souligne Gilles Daviet, la plupart des variations ne seront pas forcément intéressantes, mais un humain pourra très rapidement faire une sélection.
On imagine que cette approche pourrait par exemple permettre de remplir rapidement des banques de grooms, afin de créer de la diversité dans une foule.

NVIDIA - cheveux temps réel - Interactive Hair Simulation on the GPU Using ADMM

Encore de gros défis à relever

Si la publication de NVIDIA sur la simulation interactive de cheveux est encourageante, il ne s’agit ici que de la première brique vers un workflow de grooming véritablement interactif. Gilles Daviet souligne que son approche a de multiples limitations, comme le risque de ne pas détecter certaines collisions (avec à la clé des amas de cheveux disgracieux), ou la non prise en compte de produits capillaires (laque, gel) qu’il sera indispensable de gérer à terme pour proposer un véritable salon de coiffure virtuel. Certains effets physiques comme le vent ne sont pas non plus pris en compte par le solveur.

Enfin, un gros travail sera à fournir sur les interfaces d’outils de grooming temps réel. Gilles Daviet évoque différentes pistes comme le retour haptique ou les outils de sélection intelligents, afin de se rapprocher d’une expérience proche du réel est donc plus intuitive.

Des enjeux qui laissent présager d’autres publications dans les années à venir. Nous continuerons donc à suivre le sujet de près.

Laissez un commentaire

A Lire également