So a little explanation. The "non-trivial" aspect was my paraphrase of the comment made by Lost Marble in 2004:jahnocli wrote:neeters_guy mentioned that "...taking 3D data and mapping it onto 2D is a non-trivial task..." Well, I'm *sure* I've mentioned this before, but the interestingly-named Awesome Animator can do this, and the developer just seems to be 'some guy'. Maybe Smith Micro could buy his company and use the code? Or something?
Given that, I thought I'd give jahnocli's suggestion a go. I installed the trial of Awesome Animator (AA) and it does indeed have an import bvh option. I searched on google and found a bunch of free bvh files here: CMU Graphics Lab Motion Capture DatabaseLost Marble wrote:I think it would be really difficult to flatten the animation data like you describe. Moho is 2D, so the thinking is that you could just remove one dimension. However, as an artist, you usually want at least a little appearance of depth in a 2D cartoon drawing, otherwise it looks like a grade schooler's drawing.
Once you arrange a character's parts in a 2D plane to give the appearance of depth, I don't think there's an accurate mapping from a true 3D space to that 2D projection. For example, if a character is supposed to be partially turned away from the camera, you might position the further shoulder joint a little bit higher than the nearer one. But that's just an arbitrary position - there's no real notion of 3D there. Moho would have no way of knowing that you intended one arm to appear further from the camera, or whether the character's shoulders were at different heights.
For my test, I chose the smallest file, 08_10.bvh, a simple walk cycle. Here's a screenshot of Awesome Animator after import:
I then rendered it out and compared it against the animated clip from the CMU website. Here's a side-by-side comparison.
What do you think? I'll let you draw your own conclusion insofar as how well AA implements bvh import. Would this be a useful addition to Moho's feature set?
It occurs to me that since bvh is a text format, perhaps it can be implemented as a script?
Anyway, I hope this post helps illuminate the topic further.