Multiply Your Mocap With Megamotion!
Megamotion is an independent software project designed to help people make big movies, on small budgets.
If you would like a fast, easy way to take individual motion capture files and apply them to a crowd of actors, with navigation, steering, behavior tree AI and ragdoll physics, then you might be in the market for Megamotion.
Megamotion is small (only a 400M download) and inexpensive. A full indie license is only $299, and for our grand opening sale we have reduced that price to just $99! We are not saying how long this sale might last, but we wanted to shake out the kinks and build up a user base for a little while as we get the ball rolling. Grab it for ninety nine bucks while you can at megamotionsoftware.com!
To find out how Megamotion works, and what it can do for you, please read on.
Step One: Motion Capture
The process starts with motion capture files, in BVH format. BVH is a tried and true format, supported by almost every motion capture source and almost every final rendering application, and it is the lingua franca of Megamotion.
To get the most out of Megamotion, you will probably want to obtain your own motion capture setup, which can be anything from a used Kinect and iPi software, to a Perception Neuron suit, or even an OptiTrack camera setup. There are also multiple sources of BVH motion capture files available for purchase online.
To get you started (in the event that you don't currently have a large collection of your own mocap files) we have included the entire Carnegie Mellon dataset of 2500+ motion capture files in the initial Megamotion download. These are located in your art/shapes/CMU/ directory.
I won't go into all the details here, because I have a set of tutorials for that, but to make a long story short, you are going to crop out short, repeatable cycles from your raw motion capture files, for example a left foot/right foot walk cycle. Megamotion helps you find the perfect place to make this crop, and then stores the exact distance traveled during the course of this animation. The process only takes a minute or two, and when you are finished, you have a new way for all of your virtual actors to move around the world!
Step Two: Navigation and Steering
Next, we will want our virtual characters to be able to form intelligent pathways around their world. In your project, this might mean steering around parked cars, buildings, or any other kind of obstacle. To make this happen in Megamotion, we take advantage of Google's Recast/Detour navmesh and pathing system.
Along with navmeshes goes the need for a steering algorithm. Without this, our characters might avoid the obstacles in the world, but they would walk right through each other, because moving characters are not baked into the navmesh. To solve this problem, Megamotion uses OpenSteer, an open source C++ library for steering behaviors.
Step Three: Behavior Trees and Group Think
In order to provide a completely open ended mechanism for directing actor behavior, Megamotion supports a system of artificial intelligence called Behavior Trees. Behavior trees allow actors to follow individual action plans and respond to changing circumstances. Complementing individual behavior trees are actor groups and the Group Think function, which allow the user to define logic for groups of actors.
Step Four: Physics!
Megamotion relies on NVidia's acclaimed PhysX library to model ragdolls and rigid body physics simulation. Using the Physics Tab, you can have complete control over the shape and properties of bodies, bodyparts, and joints. Gravity can be modified or turned off, and impulse forces can be added to any body at any time, to simulate being shot, blown up, or thrown against a wall, for example - actions that can be quite difficult and dangerous to accomplish in a motion capture studio.
Step Five: Save and Export your Scene
When you've done all the damage you can do in terms of setting up the perfect crowd scene, the work flow goes like this: on the scene tab, you hit Play Scene and Start Recording, and when the action is finished you hit Stop Recording. After this, you hit the Export Scene BVH button, and a directory will be created that is full of BVH files, one for each of your actors. From here, you can import these animations onto characters in your favorite rendering software, and get on with making your movie!
Extras and Goodies: Flight Simulation
Believe it or not, with a little bit of effort, Megamotion is capable of simulating and recording the motion of a vast array of flying vehicles. This is achieved courtesy of the most impressive, FAA-certified, open source flight simulator FlightGear and its large and helpful user community. Using FlightGear, you can pilot any one of hundreds of available aircraft, interact with your crowds of actors on the ground in Megamotion, and save out all of the results. Be warned, however, this feature is experimental and only a couple of aircraft are supported so far - but the mechanism exists! And it can be quite a lot of fun.
TorqueScript and the UI Manager
It should also be mentioned that Megamotion is a standalone application built on top of the tried and true, battle tested Torque3D game engine, created by Garage Games and subsequently released under the permissive MIT open source license. While the C++ code of Megamotion is not open source, all of the (C-like) Torquescript files, which represent a large amount of program and user interface logic, are immediately available to the user.
In addition, to make development easier the User Interface Manager was created - a visual interface to define all of the buttons, text fields, menus, etc. that make up the Megamotion window. All of these tools are available to you, the customer, to modify Megamotion in any direction you see fit.
You may be wondering at this point about the production values of my videos, and the website, and if you've already grabbed the free trial, of the software itself. The fact is, even with all of the countless hours poured into this project already, there are still things to clean up and fix. However, if you like the direction I am going, and you think Megamotion could assist you in your work, please buy a license sooner rather than later!
I will not hesitate to support my users in every possible way, and will take your feedback into consideration when it comes to future directions for the software.
Have fun, and happy rendering!