Les animations dans Secondlife
Les poses et les animations dans Secondlife sont des éléments que vous trouverez dans votre inventaire dans le dossier Animations.
Les poses sont de simples postures fixes. Les animations vont faire exécuter un mouvement à votre avatar.
Les AO
Ces animations peuvent se trouver dans des AO (Animation Override). Les AO permettent de donner à vos déplacements un aspect naturel. En effet à la base les déplacements de votre avatar sont plus que moches et raide comme un passe lacet. Un AO est donc nécessaire si vous ne voulez pas avoir l’air d’un androïde rouillé.
Types d’animations
Les animations sont de deux sortes:
- Les animations construites manuellement avec un logiciel tel que « qavimator« .
- Celles faites en motion capture, réalisées à partir de capteurs positionnés sur de vraies personnes dont les mouvements sont enregistrés. Le réalisme est dans ce cas incomparable.
Activation des animations
Les animations s’exécutent automatiquement quand vous portez un objet scripté. C’est à dire un objet avec des animations intégrées et un programme de contrôle. C’est le cas des AO vus plus haut.
Les animations ne s’exécutent pas automatiquement quand vous devez cliquer sur un objet qui n’est pas porté. C’est le cas dans les clubs, pour vous faire danser, vous devez cliquer sur un objet destiné à vous appliquer une animation. Dans ce cas vous devez accepter que l’objet vous anime en lui donnant l’autorisation de le faire.
Quand on y regarde de plus près, ce n’est pas l’objet par lui même qui obtient les droits d’animation mais le script.
Ainsi un même objet peut animer plusieurs avatars dans la mesure où celui-ci contient plusieurs scripts séparés.
Comment arrêter une animation si je n’en ai plus besoin ?
Si vous portez l’objet, détachez le pour qu’il ne soit plus actif, ou s’il possède un menu, il doit y avoir un bouton « STOP ».
Si vous avez cliqué sur l’objet, il doit y avoir aussi un bouton « STOP » ou parfois, il faut entrer une commande dans le « chat » local du type: /99 stop.
Cependant, si les objets sont mal programmés, il se peut que vous restiez imperturbablement bloqué sur une animation que vous ne désireriez plus exécuter. Effectivement, vous auriez l’air un peu crétin à vous dandiner dans les rues de SL ou dans une boutique.
Le Magic Jewel UNDEFORMER stoppeur d’animations
Undéformeur avez-vous dit ? Oui, certaines animations sont prévues pour déformer votre avatar de façon plutôt agressives. Le problème des animations déformantes est que même une fois stoppées, votre avatar reste complètement explosé. CQFD ci-dessous. Seule solution vous déconnecter de SL et vous reconnecter.
Pour cette raison, @AC Arlequin Carter Production a créé pour vous le Magic Jewel Undeformer qui agit de différentes manières.
- Dans un premier temps, il faut changer de SIM pour vous éloigner de l’objet source de la déformation.
- Si c’est un objet que vous portez, détachez le impérativement.
- Portez le MJU et cliquez sur UNDEFORM, ou s’il est posé au sol acceptez que l’objet vous anime
- Dans un premier temps le Magic Jewel Undeformer liste toutes vos animations actives et les arrête,
- Ensuite sont appliquées 3 types de « reformateurs » d’avatar pour reconstituer la forme originale,
- Pour terminer, l’animation « stand » de base est appliquée.
En principe votre apparence redevient normale et toutes les animations arrêtées. Il peut arriver que l’animation ou la déformation parasite revienne aussi vite qu’elle est partie. Cela veut dire que l’objet qui vous anime ou vous déforme agit encore sur vous même en inter SIM.
Dans ce cas rechangé de SIM jusqu’à en trouver une sans influence.
Disponible sur la place du marché
Exemple de code lsl script d’animation
Créez un objet, et un nouveau script. Remplacer le code de script par défaut par celui-ci.
default { touch_start(integer detected)// Attend le clique sur l'objet { llRequestPermissions(llDetectedKey(0), PERMISSION_TRIGGER_ANIMATION); // Récupère la clé UUID de l'avatar ayant cliqué et demande l'autorisation } run_time_permissions(integer perm) { if (perm & PERMISSION_TRIGGER_ANIMATION)// La permission est donnée { llStartAnimation("sit"); // On lance l'animation llSetTimerEvent(5.0); // Lance une temporisation de 5 secondes } } timer() { llSetTimerEvent(0.0); // Arrêt de la temporisation llStopAnimation("sit"); // Stop l'animation } }
Voici un exemple de programme issu du wiki Linden qui garde les droits d’animation… Il aurait fallu ajouter à la fin du timer() « llResetScript(); » pour être plus propre et retirer les droits au script.