Thursday, March 24, 2011

The nine lives of Post Posterson

So I bet you're wondering what we did this week.

Omar has been really sick this past week (and still is). So, unfortunately, he was unable to get much done. He still needs to build a GUI in Maya that will allow him to manipulate the beta-spline curves. Assuming he starts to recover relatively soon, he should be able to get a GUI up and running by next week. He has done some reading on Maya GUI building and has found that MEL is the best for that. He's found some links online to try to help him out:

http://trishabutkowski.blogspot.com/2008/09/mel-scripting-intro-to-gui.html

http://www.polyextrude.com/tutorials/MelScripting/chapter9.html

As per his prior problem with drawing curves in Maya without 20*(number of control points-3), he's going to forget about that for now. It might not be as big a problem as he thought it was.

Nicole has been reading up on Python scripts in Maya. The end goal is to grab the control points from the movement curves in Maya. The first step involves getting Python script to run in Maya and drawing the movement path of a single joint.

Here are some resources she's looking at:

http://cgkit.sourceforge.net/maya_tutorials/intro/
http://www.rtrowbridge.com/blog/2008/11/maya-python-import-scripts/
http://cgkit.sourceforge.net/mayadoc/install.html

And one that looks like it will be particularly helpful
http://www.chadvernon.com/blog/resources/python-scripting-for-maya-artists/python-in-maya/

She'd be happy to hear any other resource suggestions.

This is the first time she's done any scripting, so she had some questions:

1. Right now Maya has a "Python" tab in the script editor. This site mentions a Python plug-in manager. Do we need this? I was talking to Jon McCaffrey, and he made it sound like we could copy the Python code straight into the script editor.

2. Similarly, the tutorials keep talking about the "Python plugin" and "Maya Python package". Where can we download these? Do we even need to download these?

3. If we want to load a Python file into Maya instead of copying and pasting it all into the script editor, where should we save the file? We have tried saving it under "C:\Program Files\Autodesk\Maya2010\scripts", but it doesn't find the file. (We're working on the SIG lab computers.)

4. One of the tutorials has a single line that's supposed to print "Hello World". (py "print 'Hello World'"). When typed into the MEL tab in the script editor, I get the error "cannot find procedure py". If I erase the py part and just type "print 'Hello World'" in the Python tab, it works. However, if I try to type the next example from that page into the Python tab, it doesn't work. Any idea on what's going wrong?

SELF EVALUATION

What we have completed
- picked out 10 gestures to animate
- animated those gestures, including finger movements
- implemented beta splines

Partially completed
- get beta splines working in Maya

By the beta review
- have Maya GUI ready
- draw the path of a single joint in Maya as it animates
- determine the control points of this path; not quite as trivial as it sounds

By the final review
- generalize the previous two steps to all joints
- pass these control points to Omar's beta spline editor
- modify the control points to achieve various emotional states; this could be done by permuting the joint positions across a certain range of y values, for instance
- poll a set of people to determine what types of modifications produce what types of emotions

By CG@Penn Day
- we might be able to generalize these findings. For example, if an angry gesture is faster and has wider motions, increasing a gesture's speed and "stretching" the position of the control points will make a gesture look angry. Prevents having to do trial and error for every gesture/emotion combination.
- create a GUI that allows the user to change parameters (example: emotion), which will in turn change the control points/curves

We've got a lot left, but we think once we can get our two parts working together, things should move quickly.

Love and unicorns,

Nelskati

1 comment:

  1. Re: Q4,

    In the tutorial, actually they meant the command named 'python', but in the given code snippet they wrote 'py blabla'.

    Just try:

    python "print 'Hello World!'";

    python "a = 10\nfor i in range(a):\n print i";

    or something else within the MEL tab

    I guess the command 'py' might be short for 'python' at some time, but not in maya 2011 anymore.

    ReplyDelete