Showing posts with label MEL. Show all posts
Showing posts with label MEL. Show all posts

Friday, October 7, 2011

Finding My Way

This week was a lot of data gathering and playing around with Pinocchio. Firstly, I was torn whether I should use motion capture data or a more visual-based data (such as videos and day-to-day observation) as the foundation for my walk-cycles. Since I'm trying to create a procedural animation tool that will create realistic human movement, it's more important that the animation look good rather than accuracy. So I started off by researching places I could find motion capture data of different phenotypes, since I figured I could try it out and see what I thought. I found a bunch of sites that allow you to download their motion capture data for free. However, after talking with Norm and Joe today, I decided that I will not use motion capture data to create the motions, but rather use visual data, mostly from watching/taping people around campus and finding walk videos online, to create the walk-cycle movements. This excites me, because it will give me more flexibility when creating the algorithms for generator, and allow me to look at more movements than just those found in motion capture data.

Along with looking for research, I was reading a few papers I found on the BioMotionLab website, and seeing how they found their data. BioMotionLab used motion capture on different subjects to find most of the data, but when it came to trying to describe the subject's mood, they used outside observers to numerically describe the subject's mood based on their walk. Thus they could gather enough data whether certain walk's appeared happier or sadder, etc. I found this really interesting technique, and I will probably use that as a testing tool for my program later on. I think that'll be a good way to see if my choices for the animations match up with other people's perceptions. They also have a cool tool where you can create an attribute for their walkers, and scale that attribute accordingly. It's an interesting idea, check it out:
click on the image
Besides data, I've been playing around with Pinocchio, trying to connect it with my Maya plug-in framework that I have so far. However, I wasn't too sure how to integrate Pinocchio with Maya in a not overly complicated way. Joe suggested wrapping the project so I could access it in Python and thus integrate it within Maya super-easy, or copying the code into my compute method on Maya itself. However, then I'd have to convert it into MEL which might be a pain. So I went digging around and found another auto-rig script that's made for Maya. One of DreamWorks' Head Character Animator, Jason Schleifer, sells a DVD that teaches animators how to rig, and has a bunch of scripts that animators can use and some guy decided to create an open-source version of the techniques found on the DVD and distribute it. So I've downloaded these scripts, and I'm looking forward to using this as a framework instead of Pinocchio, because it will be easier for me to integrate my code nicely, and also tweak it to be more versatile than the normal auto-rigging tools. I'm trying to open it up according to the instructions so stay tuned for some videos this week of using that tool.

Lastly, I added more to my Maya plug-in framework. My main goal right now are to integrate the plug-in code with the MEL code for auto-rig. If I can have that up and running I can start testing out models within the Maya framework, which would be very exciting!

Thursday, September 22, 2011

Long Week

Hey all!
This week was a topsy-turvy sort of week, with the death of my cat on Saturday, finding out I probably have an internship with DreamWorks this semester to continue my work from the summer, and then getting sick. Regardless, I did manage to do a bunch of research for this project.
I started off looking at the official website for Maya C++ API and MEL scripting, trying to get reacquainted with how to set-up a plug-in, which I will dive into writing the framework for this weekend. Joe also sent me two websites that give some really good explanations of programming techniques in MEL and Maya API, so those have been extremely helpful in teaching me good Maya programming techniques which will be necessary for the final product to run smoothly.
I've also been looking over the code for Pinocchio, the automatic rigging tool developed by MIT. I'm considering if it will be possible to incorporate their code into my framework, and how much of it will be useful. They provide meshes that one can rig, which could be really good starting meshes for the earlier testing of my plug-in. Though I won't use this one, it's kind of creepy:
Besides research and looking at ways to set up my framework, I've been working on figuring out the system architecture of my project. Since there's going to be a component of using background data and then pulling out the data based on inputs, I'll need to figure out how to create those algorithms and incorporate into my plug-in. I have a good idea of how each part of my system will fit together, but I still need to draw it out on photoshop and post it on here. I'll probably be able to finish that when I start setting up the framework this weekend. Expect a post sooner rather than later this week.
Once I've set up the framework, I plan on looking at a lot of data. I still don't know whether it will be better to collect data about different movements through mocapping, or if I should look for videos and find relative examples. For instance, I've been heavily influenced by the work of Body Motion Lab, which could be a very useful source of data.
Anyway, here's to coding, data gathering, and diagram making this weekend!