Maya Tool Development - Python plugin to aid riggers with skin weighting
(Update Continues)
Reason for selecting the topic
During a crash course I took last semester, I have got exposed to the pipeline of modeling-rigging-skin weighting-animating a character in games and movies. During the process, I have find out that skin weighting in maya can be tedious and time consuming. To speed up this process, I wanted to have a plugin to perform some pre-calculation before manual fixes.
Research materials
Maya API
http://docs.autodesk.com/MAYAUL/2013/ENU/Maya-API-Documentation/index.html
Digital Tutors Python Scripting Tutorials
http://www.digitaltutors.com/tutorial/3414-Python-Scripting-in-Maya
Various siggraph papers on skin weighting
Metrics of success
1. A plugin prototype that reads joint data and outputs weights
2. Learnt useful skills about maya tool developing
Milestones
Week 1 - 3 (Aug. 26th - Sep. 14th)
Finish Digital Python tutorials, basic Maya plugin development research
Week 4-8 (Sep. 16th - Oct. 18th)
Prototype development, aiming to have raw data from Maya with a desired structure.
Week 9-12 (Oct. 21st - Nov. 15th)
Siggraph paper research, related work in-depth research, try to understand the algorithm from paper and try implementing in Maya
Week 13-16 (Nov. 18th - Dec. 13th)
Get feedbacks from modelers and improve the plug-in based on feedbacks.
Final goal
A maya plugin that can perform skin weight calculation based on arbitrary model, and the plug provides a simple interface to let user change corresponding parameters.
(Update Continues)
Reason for selecting the topic
During a crash course I took last semester, I have got exposed to the pipeline of modeling-rigging-skin weighting-animating a character in games and movies. During the process, I have find out that skin weighting in maya can be tedious and time consuming. To speed up this process, I wanted to have a plugin to perform some pre-calculation before manual fixes.
Research materials
Maya API
http://docs.autodesk.com/MAYAUL/2013/ENU/Maya-API-Documentation/index.html
Digital Tutors Python Scripting Tutorials
http://www.digitaltutors.com/tutorial/3414-Python-Scripting-in-Maya
Various siggraph papers on skin weighting
Metrics of success
1. A plugin prototype that reads joint data and outputs weights
2. Learnt useful skills about maya tool developing
Milestones
Week 1 - 3 (Aug. 26th - Sep. 14th)
Finish Digital Python tutorials, basic Maya plugin development research
Week 4-8 (Sep. 16th - Oct. 18th)
Prototype development, aiming to have raw data from Maya with a desired structure.
Week 9-12 (Oct. 21st - Nov. 15th)
Siggraph paper research, related work in-depth research, try to understand the algorithm from paper and try implementing in Maya
Week 13-16 (Nov. 18th - Dec. 13th)
Get feedbacks from modelers and improve the plug-in based on feedbacks.
Final goal
A maya plugin that can perform skin weight calculation based on arbitrary model, and the plug provides a simple interface to let user change corresponding parameters.

Develop UI (Updated on Oct. 1st)
Several experiments are done during the last few weeks and now I have a basic layout of the plugin. It has the essential buttons and text fields for the user to input parameters. The buttons don't have complex functionality for now but soon more logic will be added into it.
I have also done experiments about coding outside of Maya with Python GUI. Probably by next update. I will have a plugin with a buttons print out the selected joint structure.
Several experiments are done during the last few weeks and now I have a basic layout of the plugin. It has the essential buttons and text fields for the user to input parameters. The buttons don't have complex functionality for now but soon more logic will be added into it.
I have also done experiments about coding outside of Maya with Python GUI. Probably by next update. I will have a plugin with a buttons print out the selected joint structure.

Learning Python From Tutorials (Updated on Sep. 18th)
I've spent my past few weeks in setting up environment and watching online tutorials to get the basics of using Python in Maya. Up until now, I had the script being able to read from a list of selections and change the objects' position and scale. I have also learnt how to translate MEL instructions from history window into Python by looking at 'quick help'.
I've spent my past few weeks in setting up environment and watching online tutorials to get the basics of using Python in Maya. Up until now, I had the script being able to read from a list of selections and change the objects' position and scale. I have also learnt how to translate MEL instructions from history window into Python by looking at 'quick help'.

Project Pitch Day (Updated on Sep. 5th)
Today I have pitched the project to class as my independent study for this fall semester. The mile stones are discussed and set, and this webpage is built to keep track of progress.
First few week are going to be spent at getting familiar with Maya and recall the knowledge learnt from before.
Today I have pitched the project to class as my independent study for this fall semester. The mile stones are discussed and set, and this webpage is built to keep track of progress.
First few week are going to be spent at getting familiar with Maya and recall the knowledge learnt from before.