Just an update in the hopes that this thread will be of more use to other people exploring this area.
There is a thread from 2008 timeframe on this site where these things were first getting worked out. Here's some of the link:
www.emutalk.net/threads/43273-Guess...ses-for-Wii-games-Pictures-inside-56K-Warning
What's maddening is these people talk about viewing animations, they make comments on how cool they are... but they don't say what specific files they're viewing from Super Mario Galaxy to view the animations. Or even how to view animations in bmdview2. So here's that info:
In the dump of the Super Mario Galaxy you will see these files:
RMGE01/files/ObjectData/Mario.arc
RMGE01/files/ObjectData/MarioAnime.arc
Unpack those. Inside the Mario.arc file is mario.bdl which contains the model (with bones, or control points, or whatever). This model can be animated, but doesn't contain any of the animation data itself.
Inside MarioAnime.arc are all the animation data files, they end in .bck. Here are some examples:
kick.bck
walk.bck
run.bck
and so on.
With my linux built executable from the original post, having used my modified Makefile, I ended up with a program
bmdview2_glut
To view the models, you pass a .bdl file to it on the command line:
bmdview2_glut mario.bdl
To view an animation, you pass both the .bdl file and the .bck file on the command line:
bmdview2_glut mario.bdl run.bck
The animations play very slowly, something like 1/16th the speed they should. The source in bmdview2 can be modified, main.cpp:
float animTime = 16*16*g_time; //TODO: find the right factor for this
The original line had only 16*g_time, I added the 2nd "16*". This speeds up the animations.
I'd have loved to RTFM but there doesn't appear to be much documentation.
Hope this is helpful...