Home |
|
|||||||
|
||||||||
Ce tutorial va introduire les notions de procédures,de sauvagarder dans des fichiers.
Avant de commencerAvant de pouvoir créer des fichiers ".mel", il faut mettre une variable d'environnement à jour dans Windows. C'est la variable : MAYA_SCRIPT_PATH. Il faut indiquer le chemin du répertoire où vont être stockés les scripts MEL. Ma première procédure
Nous allons nous servir ici du script développé par disciplus (de mayalounge : je ne remercierai jamais assez ce forum et les
gens qui y participent!!).
Et voici ce que l'on obtient avec ce script :
Ce script est bien mais le problème, c'est que quand on veut l'exécuter, il faut le retaper... Avant de passer à l'écriture de ce script, passez dans une nouvelle scène. Pour ce faire, nous allons utilser les mots clés : global proc.
Nous allons écrire la procédure : tutDisciplus dont voici le code :
Il suffit de taper exactement ça dans l'éditeur de script. Une fois ceci tapé il ne se passe rien. Nous avons écrit notre première procédure. Premier fichier ".mel"Nous allons voir maintenant comment faire pour sauvegarder notre procédure dans un fichier pour qu'elle puisse être appelée ultérieument sans avoir besoin de la retaper. Prenez un éditeur de texte tel que UltraEdit ou encore mieux, utilisez MELANIE. Tapez le script que nous avons vu précédemment. Enregistrer-le sous tutdisciplus.mel dans le répertoire que vous avez indiqué dans la variable d'environnement que vous avez changée au début. ATTENTION le nom du fichier est très important. En effet, Maya se sert du nom de la procédure pour retrouver le nom du fichier. Arrêtez Maya et relancez le. Maintenant taper tutdisciplus. Et magie : un réseau de sphères appara&icric;t. Amélioration du scriptLe scipt de disciplus est bien mais il faudrait qu'on puisse changer le nombre de lignes et de colonnes. Nous allons voir comment faire pour ajouter des paramètres à une procédure. Il auffit en fait d'indiquer le nom des paramètres. Voici donc la nouvelle procédure : global proc grille(int $num_ligne, int $num_col) . Nous allons donc sauvegarder ce script sous grille.mel.
Une fois ceci enregistré, il faut relancer Maya... Je n'ai pas encore trouvé comment faire pour qu'il prenne en compte directement le script. Maintenant tapez grille(4,3); Et voici le résultat :
Découpons le travailJe vais ajouter une autre procédure qui sera locale au script, c'est à dire que seul ce script la verra.
Nous allons travailler sur la procédure grille2.
Et maintenant voici la définition de la procédure grille2.
grille2 a le même but que grille mais cette fois le déplacement se fait dans une procédure locale. Si vous tapez grille2(3,4); dans Maya, voici le résultat:
Maintenant vous savez votre code en plusieurs procédures. Petit bonusIl est possible de stocker plusieurs procédures globales dans un même fichier ".mel". En effet, si Maya ne connait pas la procédure appelée, il va chercher dans tous les endroits indiqués par les variables d'environnement. Ainsi dès qu'il a trouvé le bon fichier il le charge. Il va donc charger la procédure si trouvant et tout ce qui se trouve avant cette procédure. Ainsi les procédures globales si trouvant seront aussi chargées. J'ai ajouté la procédure globale avant grille2 :
Si la procédure grille2 n'a pas été appelée avant, hello2 ne pourra fonctionner. Par contre, si grille2 a été appelée, voici le résultat :
Valeur de retourNous allons voir maintenant comment faire pour avoir une valeur de retour dans nos procédures. Nous allons créer la procédure carre qui élève un nombre au carré.
Voilà maintenant vous savez presque tout sur les procédures! |
||||||||
|
||||||||