Part 1: Phase 1 Recap – Albers, Crowell, Mitchell

by Daniel on March 28, 2011

in Project 1 Post-Break Checkpoint

In phase one, we managed to get most of the requested features implemented, but ran out of time on a few others. The main reason behind this is that a group member responsible for some of these portions of the project dropped the class and never got to the point of submitting working code. The other student’s main assignments on the project were the ASF/AMC parser and file output, also in ASF/AMC format. Neither one of these was ever completed.

We implemented every other required feature of the project. We read the other three file formats, visualize the frames, and allow concatenating and blending them together. The user interface was fully functional and provided features to allow easily loading in files and lining up multiple motion clips in a track for continuous playing.

There are however, a few bugs in two portions of the completed code. First, we have problems reading in many C3D files, apparently many files from the internet use additional features that we are not accounting for in our reading implementation. But some C3D files do work. Additionally, the resampling of motions to a different speed often crashes and was not finished to a point where we feel confident about it working correctly. We think the basic code that interpolates between frames is working correctly, as seen in blending, but our math in the resampling code must have some errors. For phase 2 we are using all clips with the same sample rate, so for now we have not spent the time revising our resampling code, even though it would probably not take that long to fix.

Additionally, while we think blending is fully functional, it is in the same code block as resampling and we have currently not re-pulled this in to our updated project as the “motion fragments” paper does direct concatenation without blending. If we have time, we may try using some blending later and seeing how the results compare to direct concatenation in real time. Also, in a limitation of our blending code, blending only works if there are exactly two motion tracks overlaying each other and does not blend three or more clips at once.

Because of our group shortages, we have decided not to spend much time adding/fixing missing portions from phase 1, unless they are necessary for part 2. We will stick to just BVH for motion files, for instance. In the case of writing out files, we have added code that converts the motion clips to a binary format for write out rather than spending the extra time to finish the ASF/AMC output. It should still provide the same basic functionality as the ASF/AMC output.

Clip Generation

Bone List and Display Properties

Previous post:

Next post: