Presentation is loading. Please wait.

Presentation is loading. Please wait.

CIS682 MEL Scripting Overview. CIS682 MEL commands Maya help -> MEL command reference MEL command line Script editor –Icon –Window->General Editors->Script.

Similar presentations


Presentation on theme: "CIS682 MEL Scripting Overview. CIS682 MEL commands Maya help -> MEL command reference MEL command line Script editor –Icon –Window->General Editors->Script."— Presentation transcript:

1 CIS682 MEL Scripting Overview

2 CIS682 MEL commands Maya help -> MEL command reference MEL command line Script editor –Icon –Window->General Editors->Script editor

3 CIS682 Script editor Type in commands Shelf button: highlight, cmd-click, drag Script file: File->source script

4 CIS682 Attributes sphere; listAttr nurbsSphere1; getAttr nurbsSphere1.tx; setAttr nurbsSphere1.translateY 10; aliasAttr up nurbsSphere1.ty setAttr nurbsSphere1.up

5 CIS682 Simple Example For ($j=0; $j<10;$j++) { sphere; move –r 0 $j 0 }

6 CIS682 Example // arrayOfSpheres.mel // shows simple nested 'for' loops to create objects for ($i=0; $i<10; $i++) { for ($j=0; $j<10; $j++) { sphere; move -r $i $j 0; } };

7 CIS682 Example // simpleKeyframes.mel // shows // setting object attributes (x and y translation in this case) // how to set the special *currentTime* variable // setting keyframes // the animation can then be played back sphere -name ball; currentTime 0; SetKey; currentTime 50; setAttr ball.translateX 10; SetKey; currentTime 100; setAttr ball.translateY 10; SetKey; currentTime 150; setAttr ball.translateX 0; SetKey; currentTime 200; setAttr ball.translateY 0; SetKey;

8 CIS682 Example // from www.robthebloke.org/mel/DATA_mesh.html polyCube -name myObj; $mesh = "myObj"; float $vert[]; int $vertexCount[] = `polyEvaluate -v myObj`; print ("number of vertices: " + $vertexCount[0] + "\n"); for($i=0;$i<$vertexCount[0];$i++) { // get world space vertex coords $vert = `xform -ws -q -t $mesh.vt[$i]`; // $mesh.vtx[$i] = >; print( $vert[0] + " " + $vert[1] + " " + $vert[2] + "\n" ); };

9 CIS682 Animation expressions expression -s "nurbsSphere1.tx = sin(time)"; Manipulate time slider (or ‘hit play’) to move object Window->Animation Editors->Expression Editor Maya->Help Search on ‘MEL’ Differences between expression and MEL syntax

10 CIS682 Animation expressions // http://www.fundza.com/melquickref2/#expression1 // NOTE: `spherè returns 2 strings. that’s why $obj is an array // and why $obj[0] is used in the expression string $exp = ""; string $obj[]; int $i; for ($i=0;$i<3;$i++) { $obj = `sphere`; move (rand(-3,3)) (rand(-3,3)) (rand(-3,3)); $exp += "select -r " + $obj[0] + ";\n" + "move -moveY (rand(0,2));\n"; } $exp += "select -clear;\n"; expression -s $exp -ae 1; playbackOptions -min 1 -max 30; play;


Download ppt "CIS682 MEL Scripting Overview. CIS682 MEL commands Maya help -> MEL command reference MEL command line Script editor –Icon –Window->General Editors->Script."

Similar presentations


Ads by Google