Blobby Glass Man


Motion capture data (mocap) is normally used to achieve realistic character motion. This technical breakdown explores how mocap data can be used to generate a variety of alternative visual effects.



Blobby Glass Man from Jake Wisdom on Vimeo.





Similar to previous assignments, one of the reasons this is very interesting is because all of these points were generated at render-time.  Not only does that keep the scene you are working in clean and fast, but it allows you to create geometry like this, which wouldn't be possible otherwise.

 

Much of the code for this project was provided by professor Kesson. It was a challenge at first for me to understand all of the code since it was much more complex than code I had worked with in Maya before. I was able to start understanding all the code, and get everything working, and from there I knew I wanted to add some variation to the trails.  So to extend the code, I added a new parameter, Jitter.  This moves the trail points a random amount, between the bounds you set, which gave me the effect I was looking for. Lastly, I wanted my animation to be a bit slower, so I was able to use twixtor to add extra frames to give me the desired speed.

 

If I had more time I would have liked to add some more features like having the size decay towards the end of the trail, and possibly having the glass shader be changed along the trail as well.



- MoCap Data File: This allows you to do a file search to find the mocap file with ease

- Render As: Gives the option to render motion capture markers as Points, Curves, or the Blobby function we used in previous project

- MoCap Scaling: This sets the size of the overall performance

- Geometry Size: Sets the size of each individual point of the mocap

- Trail: Number of frames to keep behind the current one

- Jitter: Moves of points a random amount between, between the parameter you set and its negative

 



These three scripts provide the user interface for this project.

MocapUI.rman is the script you start with to begin making your interface. This is where you set the parameters you plan on using, as well as their type and details.  For instance, you can create a slider parameter, then define the start, end and step size for the slider.


MocapRI.mel is generated from mocapUI.rman, and is where some of the heavy lifting is done.  For this project, this file is responsible for actually writing out all of the geometry.  Although it does not do any of the other calculations, this is where they are called to output the actual geometry.


MocapUI.mel is also generated from mocapUI.rman.  This script is quite simple and is just a place for you to set the default parameters for your user interface.



The follwing three scripts are responsible for the mocap interpretation and functions that actually place all the points and information into the scene.

MayaProjUtils.py is responsible for providing a handful of extra functions that made getting things like the path, current time, or end time easier.


MoCapDB.py is a very important script, and is responsible for reading in and interperating the data from the mocap txt file


MoCapRMan.py is last, but certainly not least.  This script is responsible for everything else being done.  Within this script is where all the functions to visualize the data live.  It provides multiple procedures that allow the user to choose the type of geometry they will be generating.  This is where most of the editing took place to implement the jitter