Motion Builder Gap Filling Methods:

1. The default gap filling is set to “rigid body.” The program interpolates where the marker should be in space based on the position of the other markers in the rigid body. This can be way off, if you have more than one marker disappearing at the same time within a rigid body. This happened to me quite often. There were a lot of gaps at the elbows, knees, wrists, and ankles of my dogs.

View an example of the Left Side Elbow marker in the floor when set to fill based on rigid body.
View the marker at the correct position.

2. For long gaps, set the curve to "Auto-linear", which flattens out the animation curve so that you can set “Gap Key Frames” within it to position the marker based on human visual approximation.

3. Alternately, you can set it to “Control Curve” and set “Gap Key Frames” along the curve, but if you don’t flatten the curve first, using "Auto-linear", you get another curve (the one you are setting keyframes on) over the top of the original curve. This sometimes works to control the curve underneath. However, if you decide you don’t like one of your key frames and delete it, your underlying curve does not go back to its original shape. Thus, the marker data becomes way off. I learned this the hard way.

View an example of a control curve on top of the underlying mocap data curve. The control curve is the white line over the top of the yellow line.

4. You can use “Sample Curve” to be able to adjust the individual keyframes set during the motion capture. This is very tedious and time consuming, but sometimes very effective. I had 4 keyframe squares between each “frame” of the animation in Motion Builder. There are many keyframes set for each second of data. I captured the data at 120 Hz. I believe this means 120 frames per second.

View an example of one keyframe being moved on a "Sample Curve" setting. Note, the program ran slow with Cam Studio recording the screen at the same time, so there is lag in the marker movement after the key frame is moved. Once you move one key frame, you have to move the others to form a smooth curve, or you end up with a peak or spike in the marker movement.

5. Auto-Bezier is another gap filling method that works well over short gaps on curves that are slow changing and smooth. This filter basically smooths out the curve within the gap.

Again, filling gaps, just like cleaning done in Workstation, involves selecting one or two markers at a time, playing back the animation very slow, or even frame by frame, both on a lateral view of the dog, and either an overhead or frontal view. By checking the marker in different views, you can catch any peaks or spikes or wobbles that occur on a different axis than the one in the previous view. It’s all very tedious, time consuming work. It is almost a black hole of time. I wasn’t able to finish filling all gaps in every take for every dog. I have two dogs’ takes completely done and ready for import into Maya at this time. One is a healthy dog (Stevie), and the other is a hip dysplastic dog (Maddy). I’m going to complete a cranial cruciate ligament rupture next. This way, I’ll at least have one dog of each condition cleaned by January.
Altogether, I motion captured 2 normal gait, 2 hip dysplastic dogs, and 2 cranial cruciate ligament ruptures. The dogs that aren’t completely done in Motion Builder have their rigid bodies created and they are converted to .fbx format – a start. A couple have human actors mapped to the marker data – which I learned was a waste of time.

View the normal dog’s cleaned marker data (Stevie).
View the hip dysplastic dog’s cleaned marker data (Maddy).

Back to main Design 950 page.