Étude d`article : "Design de personnages mécaniques

Transcription

Étude d`article : "Design de personnages mécaniques
Taupiac Jean-Daniel
Master 2 Images, Games and Intelligent Agents
GMIN 330 - Réalité virtuelle et augmentée
Étude d'article :
"Design de personnages
personnages mécaniques par ordinateur"
ordinateur"
Source : http://www.disneyresearch.com/project/mechanical-characters/
Auteurs :
• Stelian Coros (Disney Research, Zurich)
• Bernhard Thomaszewski (Disney Research, Zurich)
• Gioacchino Noris (Disney Research, Zurich)
• Shinjiro Sueda (Disney Research, Boston)
• Moira Forberg (Disney Research, Boston)
• Robert W Sumner (Disney Research, Zurich)
• Wojciech Matusik (MIT CSAIL)
• Bernd Bickel (Disney Research, Zurich)
Laboratoire de recherche : http://www.disneyresearch.com/
Étude d'article : "Design de personnages mécaniques par ordinateur"
I.
Taupiac Jean-Daniel
Contexte
De nos jours, l'arrivée d'imprimantes 3D sur le marché amène de nouvelles perspectives
technologiques. Ainsi, pour chaque utilisateur en possédant une, il est possible de fabriquer chez
soi l'objet qu'il souhaite, à partir du moment où il dispose d'un modèle conçu au préalable. La
modélisation 3D, cette étape importante de la conception, est un des domaines appliqués de la
réalité virtuelle.
Cette étude d'article s'intéresse donc à une
méthode
de
conception
de
figurines
mécaniques proposée par les chercheurs de
Disney Research. Il s'agit d'un laboratoire de
recherche financé par la compagnie Walt
Disney et collaborant notamment avec l’École
polytechnique de Zurich et l'Université
Carnegie-Mello de Pittsburg. Crée en 2008, ce laboratoire de recherche et développement destine
ses travaux aux domaines de l'informatique appliqué au cinéma et à l'animation en images de
synthèse, ainsi qu'au domaine de la robotique.
II. Objectif
À l'heure actuelle, grâce à des logiciels, les artistes peuvent donner vie à des personnages
virtuels dans des domaines tels que le cinéma d'animation ou encore les jeux vidéos. Dans le
monde réel, des créatures animées et robotisées sont utilisées dans les parcs d'attraction et pour
certains effets spéciaux au cinéma. De manière moins sophistiquée, ces mécanismes sont aussi
utilisés afin de réaliser des jouets qui restent assez populaires et ce depuis le 19ème siècle.
Cependant, créer des mouvements complexes et précis pour des personnages mécaniques
reste une tache fastidieuse. En effet, ces mouvements sont régis par des assemblages d'arbres et
engrenages. De ce fait, la création de ces systèmes reste une discipline réservée à des designers
et ingénieurs expérimentés. Même pour ces professionnels, le processus de réalisation reste
jalonné d'essais infructueux dû aux difficultés d'obtenir un résultat acceptable. Ces difficultés
proviennent de la complexité du design d'un personnage mécanique dans l'espace et aux
limitations liées à ses mouvements possibles.
Par conséquent, il apparaît intéressant de simplifier ce processus de conception afin de le
rendre plus accessible. Cet article présente un système de design interactif de conception de
structures mécaniques. Celui-ci a donc pour but de permettre à des utilisateurs non experts de
créer leur propre personnage mécanique.
La méthode a été présentée à lACM SIGGRAPH 2013, une conférence internationale sur
l'infographie et les techniques interactives qui a eu lieu fin Juillet 2013 à Anaheim, en Californie.
2 / 10
Étude d'article : "Design de personnages mécaniques par ordinateur"
Taupiac Jean-Daniel
III. Application présentée
1. Principe général de l'application
L'application amène l'utilisateur à fabriquer le personnage mécanique correspondant à un
personnage articulé dont il dispose de manière virtuelle et pour lequel il souhaite définir les
mouvements. Une fois la figurine fabriquée, les assemblages mécaniques qui la compose, peuvent
être enclenchés par un mouvement manuel (manivelle, roue crantée) ou encore un moteur
électrique.
À partir du personnage articulé modélisé en 3D, l'utilisateur crée une animation en dessinant les
courbes de mouvement des différentes parties du personnage supposées bouger. Pour chaque
courbe, le programme crée ensuite un mécanisme optimisé qui reproduit le mouvement de
manière la plus réaliste possible. Ces mécanismes sont ensuite ajoutés au personnage et reliés
entre eux par des engrenages en utilisant des procédés de modélisation basés sur des concepts
physiques.
Le système automatise les étapes délicates du processus de design et permet d'obtenir un
personnage mécanique qui peut être fabriqué rapidement en utilisant des outils tels que des
imprimantes 3D. Les mouvements de ce personnage peuvent être planaires ou sur trois
dimensions.
2. Principe général du système interactif
Le système commence par gérer une librairie d'assemblages mécaniques qu'il pré-calcule pour
chaque type d'assemblages. Après cela, il procède aux étapes suivantes :
• Un personnage articulé est importé et une zone contenant les mécanismes est définie (a).
L'utilisateur définit alors les points en mouvement à relier aux mécanismes et dessine leurs
courbes de mouvement (b).
• Pour chaque courbe, une base de données est interrogée afin d'extraire un mécanisme
correspondant à la courbe.
• Le système relie alors les mécanismes correspondants au personnage.
• Une fois tous les mécanismes liés au personnage, ceux-ci sont reliés entre eux par
ensemble d'engrenages (d). De la même manière, le système va modifier les mécanismes
si ceux-ci sont simplifiables, c'est à dire si plus d'engrenages que nécessaires ont été
générés.
• Si le personnage est planaire, le système repositionne les mécanismes afin qu'il n'y ait
aucune collision lors des mouvements.
• Pour terminer, le support du personnage est généré de manière à masquer les
mécanismes (e). Le modèle ainsi produit permet à l'utilisateur de l'imprimer en 3D (f).
3 / 10
Étude d'article : "Design de personnages mécaniques par ordinateur"
Taupiac Jean-Daniel
3. Génération des mécanismes
Les composants sont liés par différents types de connections, chaque type ayant des
contraintes mécaniques différentes. Quatre types de connections ont été implémentés. Une fois
combinés, ils permettent de simuler un grand nombre d'assemblages mécaniques :
• Les connections "par point", permettant de modéliser une articulation entre deux
composants.
• Les connections "point sur ligne", représentant des liaisons glissières.
• Les connections "périodiques", connectant les engrenages entre eux en tenant compte de
leurs contraintes mécaniques (nombre de dents, forme circulaire ou non, etc...)
• Les connections "à état fixe", simulant les structures fixes comme le support ou les arbres
du mécanisme. Elles permettent également à l'utilisateur de rendre temporairement fixe
certaines parties du personnage.
Afin de générer les mécanismes correspondants aux courbes dessinées, le système gère en
entrée une librairie de mécanismes déjà définis. Chacun d'entre eux contient au moins un
engrenage qui sera directement connecté à la source qui crée le mouvement, ou à d'autres
engrenages qui le transmettront.
Afin d'obtenir le mécanisme produisant un mouvement le plus fidèle possible, le système doit
effectuer deux opérations. Il va chercher une courbe correspondant globalement, puis modifier les
paramètres des éléments (taille, forme, position, vitesse angulaire, etc...) afin que le mouvement
de sortie corresponde.
Une fois initialisés, les assemblages sont ensuite reliés au personnage.
4. Liaison des mécanismes
Afin de transmettre le mouvement actionnant le personnage, il est nécessaire de relier les
mécanismes entre eux. Le système décompose ce traitement en deux étapes, la première
consistant à déterminer la disposition des engrenages, leur nombre et leurs connections. La
deuxième étape amène ensuite le système à calculer les paramètres des engrenages afin qu'ils
respectent quelques contraintes telles que la correspondance des dents lorsqu'ils sont connectés,
la vitesse angulaire voulue et l'absence de collisions entre deux engrenages. Ce traitement est
effectué au sein d'une fonction déterminant la qualité du mécanisme produit.
Différents types d'engrenages
Selon la position des engrenages, sur le même plan, le même axe ou non, le système génère
un type de mécanisme différent :
• Séquentiel (jaune) si les engrenages ont le même plan, ils sont reliés par un ou plusieurs
engrenages selon la distance les séparant, les vitesses angulaires et le rayon de chacun.
• Parallèle (rouge) si les engrenages ont le même axe.
• Combiné (vert) entre séquentiel et parallèle dans d'autres cas.
4 / 10
Étude d'article : "Design de personnages mécaniques par ordinateur"
Taupiac Jean-Daniel
Ces liaisons sont alors transformées en un ensemble de contraintes ajoutées au schéma
optimisé du mécanisme qui permet d'obtenir l'assemblage mécanique. Cet ajout prend également
en compte les contraintes de collision engrenage-engrenage. Selon les chercheurs, cette
méthode, qui consiste à assembler les engrenages par paires de manière itérative, permet
d'obtenir un processus vraiment intuitif amenant des résultats rapides.
Néanmoins, afin de simplifier l'opération, les chercheurs ont laissé la possibilité à l'utilisateur de
choisir les engrenages à lier s'il le souhaite.
5. Gestion des collisions
Lors de la génération des mécanismes, les collisions engrenageengrenage ont déjà été gérées mais le système doit éviter les
collisions entre les différents éléments (figurine, engrenage, arbres).
Pour ce faire, les chercheurs ont permis à l'utilisateur de déplacer
intuitivement les engrenages si des collisions sont détectées.
Pour des mouvements en trois dimensions, le procédé s’avérerait
assez complexe à mettre en œuvre, ce qui explique que les
chercheurs aient souhaité limiter leur système aux mouvements en
deux dimensions.
Pour contourner le problème, lorsque les composants des
assemblages se déplacent sur des plans parallèles, ce qui est assez
fréquent, le système décale automatiquement chaque composant afin
d'éviter les collisions. Dans ce cas de figure, le problème de gestion
des collisions est traité en résolvant un problème de satisfactions de
contraintes (CSP), où l'ensemble de contraintes est défini par les
contraintes propres aux mécanismes et celles liés à la non-collision
des éléments.
Les composants sont placés sur
différents plans pour éviter les
collisions
6. Génération du support
L'utilisateur peut choisir de dessiner lui même le support, mais lorsque ce n'est pas le cas, le
système utilise un simple algorithme qui aide l'utilisateur à le faire. Celui-ci commence par
englober tout le mécanisme dans une boite, puis récupère les voxels non occupés lors de
l'exécution d'un cycle complet du personnage. Il propose ensuite l'information à l'utilisateur qui
peut définir les positions des parois de son support.
Une fois qu'une paroi est crée, les axes de rotation des engrenages qui peuvent s'y greffer y
sont automatiquement connectés. Pendant que le système calcule et définit les liaisons de chaque
axe, l'application indique à l'utilisateur les axes restants à relier. Une fois tous les axes liés au
support, l'assemblage est prêt à être fabriqué.
Le système permet aussi de définir une boite à engrenages qui ne fait pas office de support
mais qui est interne au personnage.
7. Fabrication
De nombreux exemples de fabrication utilisent un système de structure décomposée en
couches permettant de séparer facilement les différents éléments de la pièce. Cela permet de les
fabriquer indépendamment et de les assembler soi-même ensuite. Même si cette méthode est
moins coûteuse, elle représente une opération lourde en temps. C'est pourquoi les chercheurs ont
préféré utiliser une technique rapide d'impression 3D leur permettant de fabriquer le personnage
d'un seul trait.
5 / 10
Étude d'article : "Design de personnages mécaniques par ordinateur"
Taupiac Jean-Daniel
IV. Résultats obtenus
1. Objectif premier
Le but principal des recherches étant d'arriver à proposer un système interactif permettant de
réaliser ses propres figurines mécaniques, les chercheurs ont démontré l'atteinte de leur objectif
en fabriquant eux même des personnages mécaniques. Pour prouver la souplesse de leur
système, ils ont dessiné dix personnages mécaniques et en ont fabriqué un bon nombre. En se
penchant sur les caractéristiques des automates réalisés, on constate effectivement une portabilité
de leur méthode sur des personnages de complexités différentes :
Détails des automates fabriqués
2. Comparaison de courbes
Pour vérifier la qualité de leur module de comparaison de courbe, les chercheurs ont dessiné
des courbes et ont retrouvé la courbe la plus proche pour chacune d'entre elles au sein d'une base
de données de 1000 courbes générées aléatoirement.
Ils ont ensuite comparé leur méthode implémentée avec celles qu'ils avaient à leur disposition :
6 / 10
Étude d'article : "Design de personnages mécaniques par ordinateur"
Taupiac Jean-Daniel
Les courbes bleues correspondent aux courbes dessinées et pour lesquelles on recherche une
correspondance. Les courbes rouges, quant à elles, correspondent aux résultats obtenus avec les
différentes méthodes.
La première ligne correspond aux résultats obtenus avec leur propre système paramétré avec
des coefficients optimisés. La deuxième ligne montre ceux obtenus en appliquant les distances de
Frechet. La dernière ligne représente les courbes calculées en utilisant leur propre méthode avec
des coefficients unitaires.
Bien que chaque méthode donne des résultats satisfaisants, on s’aperçoit que dans certains
cas (soulignés en jaune) les écarts entre les courbes sont trop importants. Malgré le fait qu'il soit
difficile de juger l'efficacité des méthodes, il apparaît clairement aux chercheurs que leur méthode
optimisée retourne des courbes correspondant bien mieux dans tous les cas.
3. Recherche du mécanisme optimal
Les chercheurs ont également analysé les performances de leur processus de recherche de
mécanisme correspondant à une courbe de mouvement. Lors de cette étape importante quatre
types principaux de mécanismes ont été utilisés :
Pour les deux mécanismes de gauche, modifier la vitesse angulaire des engrenages affecte la
courbe générée. Pour assurer une correspondance avec les différents types de courbes
recherchées, il a fallu créer quatre engrenages différents pour chacun d'entre eux, chaque
engrenage possédant une vitesse angulaire différente.
Les deux mécanismes à droite étant plus simples, il n'a pas été nécessaire d'en faire de même.
7 / 10
Étude d'article : "Design de personnages mécaniques par ordinateur"
Taupiac Jean-Daniel
Pour chaque type de mécanisme, 3000 courbes associées ont été stockées. Par rapport aux
autres approches de recherche et comparaison dans la base de données qu'ils avaient à leur
disposition, ils obtiennent des résultats 20 à 30 fois plus efficaces avec la méthode de
comparaison par calcul de gradient qu'ils ont déployé. Dans certains cas, ces autres approches
pouvaient mettre 30 min à 2h30 à explorer la base de données si aucun exemple ne pouvait être
trouvé.
4. Complexité des personnages
Le système permet de créer des personnages de haute complexité. En effet, les chercheurs
sont parvenus à créer des animations différentes pour un même personnage, et plus
particulièrement en contrôlant le timing de ses mouvements. Par exemple, le personnage nommé
EMA a été conçu pour deux mouvements différents :
En haut : EMA marchant. En bas : EMA galopant.
En utilisant des engrenages non circulaires, le système permet de décomposer le mouvement et
avoir un contrôle sur le timing des pas du personnage. Ainsi le personnage EMA a pu être
mécanisé avec un mouvement de galop au cours duquel ses membres effectuaient un mouvement
de descente plus rapide que le mouvement de montée.
5. Conception
En moyenne, le système permet de concevoir le mécanisme en moins de 30 minutes. Pour les
personnages imprimés en une seule et même pièce, la conception s'effectuait donc en moins
d'une journée. Le temps supplémentaire venait généralement de la génération des structures de
support.
8 / 10
Étude d'article : "Design de personnages mécaniques par ordinateur"
Taupiac Jean-Daniel
L'impression 3D a pu prendre jusqu'à 42 heures dans certains cas. Peaufiner la réalisation du
support, c'est à dire enlever la matière en trop, a pu nécessiter jusqu'à 2 heures supplémentaires.
Les personnages créés pièce par pièce ont requis du temps de préparation et d'assemblage
supplémentaire, mais les temps d'impression ont été significativement réduits.
V. Perspectives d'évolution
Afin d'exploiter pleinement leur pipeline, les chercheurs estiment que deux améliorations
majeures sont à prévoir. La première consisterait à améliorer la gestion des courbes de
mouvement pour inclure la gestion des courbes en trois dimensions. La deuxième évolution
nécessaire serait d'améliorer la méthode automatique de gestion des collisions en trois
dimensions.
La variété de mouvements possibles dépend directement des types de mouvements stockés en
base de données. Son contenu limite donc le panel de mouvements possibles, et il y aurait donc
un intérêt à chercher des méthodes qui permettraient d'extraire automatiquement les mécanismes
d'assemblages existants afin d'en extraire des données réutilisables.
Il est également envisageable d'ajouter un module permettant de prendre en compte les
contraintes physiques, mécaniques et matérielles afin de gérer, par exemple, le poids ou la
robustesse du personnage. Pour leurs phases de fabrication, les chercheurs ont eux même
effectué un tel processus dans leurs approches et restent convaincus qu'il est automatisable.
Il semble également possible que les mouvements de torsion entre les éléments du mécanisme
puissent être amortis en utilisant des engrenages non circulaires, qui ont déjà été utilisés lorsqu'il y
a eu besoin de contrôler le timing d'un mouvement. De même, les chercheurs souhaiteraient
ajouter des optimisations supplémentaires permettant de minimiser au maximum la force
nécessaire pour faire fonctionner le personnage conçu.
Le système informe l'utilisateur lorsqu'un problème de violation de contraintes apparaît, et celuici doit intervenir manuellement pour le résoudre. Une amélioration intéressante suggérée serait de
pouvoir identifier et signaler le problème soulevé, ou encore de donner des indications pour le
guider afin de l'aider à le solutionner de manière optimale.
Une des limitations basique du système reste la restriction des mouvements des personnages
à des mouvements cycliques uniquement. Il serait intéressant d'amener les personnages à
effectuer des mouvements qui ne soient pas seulement cycliques, en utilisant par exemple des
systèmes physiques permettant d'activer ou désactiver plusieurs mécanismes actifs ou non.
Les personnages fonctionnent sans prendre en compte leur environnement. Une des
aspirations les plus ambitieuses des chercheurs, serait d'amener leurs travaux à ce qu'ils puissent
appréhender leur environnement et interagir avec lui afin d'effectuer des tâches un peu plus
complexes.
9 / 10
Étude d'article : "Design de personnages mécaniques par ordinateur"
Taupiac Jean-Daniel
VI.Impressions
L'arrivée des imprimantes 3D sur le marché ouvre de nouvelles perspectives technologiques et
l'impression de ses propres jouets en fait assurément partie. Bien qu'au stade expérimental, le
concept semble promis à un large éventail d'améliorations possibles. Ces nombreuses
perspectives laissent facilement imaginer qu'il sera bientôt possible pour chacun de fabriquer
facilement ses propres automates.
Outre le domaine de la figurine articulée, on peut aisément envisager des utilisations diverses
de cet outil. Parc d'attractions, boutiques, particuliers pourraient ainsi personnaliser leurs décors.
Le domaine de l'art pourrait tout aussi bien y trouver une utilité tant les possibilités qu'offre un tel
système peuvent amplifier les désirs créatifs.
Techniquement, ce thème alliant robotique, informatique et mécanique semble passionnant.
Mettre au point et affiner des procédés permettant de comparer des courbes et modéliser des
mécanismes optimaux reproduisant ces mouvements, apparaît comme complexe mais stimulant.
Enfin, il peut sembler étonnant de constater que Disney favorise la fabrication de jouets par des
particuliers. En effet, la compagnie assurant la fabrication et la vente de leurs produits dérivés, on
pourrait être tenté de penser que cela irait à l'encontre de leurs intérêts. Cependant, inciter les
gens à créer leurs propres jouets et à partager leurs créations, pourrait leur permettre d'avoir un
aperçu réaliste des pensées créatives qui animent le public. Cela pourrait notamment leur
permettre de cibler plus facilement les marchés à leur portée.
10 / 10

Documents pareils