Le "Morphing" des Modèles

Le Noeud ModelMorpher (déformation ou "morphing" de modèles) rend très facile la déformation (ou le "morphing") de toute une séquence de Noeuds Seamless .
Essayez simplement ceci pour voir le ModelMorpher en action en à peine 10 clics :

1 - Créez un nouveau fichier smls en cliquant   dans la barre d'outils principale.
2 - Ouvrez la fenêtre de l'arbre logique de scène et ajoutez un NurbsLathe (tour NURBS)  dans la part (Partie) choisie  (il suffit de cliquer la vignette NurbsLathe dans la barre d'outils principale).



3 - Cliquez la vignette ModelMorpher  ("morphing" de modèles) dans la barre d'outils principale.
4 - Choisissez le deuxième Noeud NurbsLathe (tour NURBS) dans la scène:



puis cliquez-tirez un ou plusieurs points de contrôle.
5 - Choisissez le Noeud Anim (Animation) puis cliquez play (marche).

Vous y êtes !

Vous aurez remarqué que le Noeud ModelSequence  (séquence dans un modèle) contient 3 Noeuds Seamless  mais il serait plus exact de considérer qu'il n'y en a que deux, parce que le dernier Noeud Seamless est une simple référence au premier et par conséquent n'en fait pas un de plus, c'est le même. Le second Noeud Seamless est une copie à l'identique du premier, au moins jusqu'à ce qu'on commence à cliquer-tirer les points de contrôle de son Lathe (tour).
On peut ajouter une nouvelle copie à l'identique de tout Noeud Seamless en pressant la clé "Ctrl" tout en tirant ce Noeud choisi dans la liste vers tout autre emplacement dans l'arbre logique:



Si vous tenez à ce que la liste contienne plus de 3 Noeuds Seamless, réglez le champ key (clé) du Noeud ModelSequence   pour qu'il soit égal au nombre de Noeuds Seamless que le ModelSequence doit en contenir.

Quand un ModelMorpher ("morphing" de modèles) est exporté en VRML/X3D il est converti en Noeud Shape et chaque ModelSequence contenu dans le ModelMorpher est converti en un Noeud CoordinateInterpolator. Si l'on se sert du ModelMorpher pour équiper de gestes un avatar, un Noeud ModelSequence peut être utilisé pour chaque geste.

Dans l'image suivante:



nous pouvons voir un GestureGroup (groupe de gestes) contenant deux Noeuds Anim (Animation) pour deux gestes. Le script du premier geste anime le premier ModelSequence seq0 et le script pour le deuxième geste anime le second ModelSequence seq1.

Le Noeud ModelMorpher ("morphing" de modèles) est si facile à mettre en oeuvre que tout débutant trouvera idéal de l'utiliser, tant les résultats peuvent être aussi rapides qu'intéressants. Toutefois des problèmes peuvent surgir dès qu'un changement dans un Noeud Seamless modifie le nombre de ses sommets dès lors différent de celui qui est contenu dans la Noeud ModelMorpher entier. Si on tente de le faire, cela provoquera vraisemblablement un crash (un "arrêt non programmé") de Seamless3d. Le plus sûr moyen de faire cette erreur avec un Noeud Lathe (tour) consiste à oublier qu'une de ses extrémités ne correspond pas avec les autres Lathes (ne correspond pas, c'est à dire non définie comme extrémité ouverte ou fermée). Ceci, parce que Seamless3d terminera l'extrémité de la forme du Lathe (tour) sur un simple sommet, au lieu de le faire sur un anneau de sommets quand le point de contrôle de l'extrémité est fermé (point x == 0).
Cela n'arrivera pas automatiquement si le Lathe (tour) est converti en un NurbsPatch (Pièce NURBS) ou si les parts (Parties) sont converties en Parties bleues qui permettront dès lors d'utiliser le immediate radial tug (Tracteur de collines immédiat).

Si vous voulez changer la couleur il vous suffit de changer celle du premier Noeud Seamless dans le ModelMorpher mais la couleur ne sera pas mise à jour avant que vous n'ayez fermé puis re-ouvert Seamless3D. Autre solution, faites une copie du Noeud Seamless du haut puis effacez l'ancien (c'est l'addition d'un nouveau Noeud Seamless qui oblige le ModelMorpher à réinitialiser en interne).

Note: n'essayez pas de copier un Noeud ModelSequence existant de la même façon que l'on copie d'habitude un Noeud Seamless. Cela sera possible dans l'avenir, mais en attendant contentez vous d'ajouter un nouveau Noeud ModelSequence depuis la barre des nouveaux Noeuds et copiez dedans les Noeuds Seamless à partir d'un autre, ou de ce Noeud ModelSequence "existant".



Copyright© 2000-2007 Graham Perrett thyme@seamless3d.com
traduction Matthieu