[2008 - Accepted] Motion Synthesis based Character Animation

Threads related to Google Summer of Code
westine
Google Summer of Code Student
Google Summer of Code Student
Posts: 62
Joined: Sun Apr 01, 2007 12:12 pm

Scripted Animation demo video

Post by westine »

this demo uses the following script

Code: Select all

States: 7
0,idle
1,lf90
2,rf90
3,round
4,rush
5,walk
6,wheel
Transitions: 6
5,'AnimationEnd',rush,4
4,'AnimationEnd',idle,0
0,'AnimationEnd',lf90,1
1,'AnimationEnd',rf90,2
2,'AnimationEnd',round,3
3,'AnimationEnd',idle,4
4,'AnimationEnd',wheel,6
6,'AnimationEnd',walk,5
Image
larger pic
YouTube video
User avatar
KungFooMasta
OGRE Contributor
OGRE Contributor
Posts: 2087
Joined: Thu Mar 03, 2005 7:11 am
Location: WA, USA
x 16
Contact:

Post by KungFooMasta »

I bet it looks really good normally, but the video is very choppy, I couldn't really tell what was going on. :(
Creator of QuickGUI!
Tomat1979
Gnoblar
Posts: 2
Joined: Wed May 07, 2008 2:10 pm

Re: Scripted Animation demo video

Post by Tomat1979 »

westine wrote:this demo uses the following script
I think nobody undestend that's happen.

It should better to split screen on 4 part and in 1,2 parts show - chracter animation FROM (1 part of screen) and TO (2 part of screen) transation will happen. And in 3,4 parts show result of simple blend (3 part of screen) and result of blend using motion grapth (4 part).
Then people might see difference of simple blend and blend using motion graph.
User avatar
Wolfmanfx
OGRE Team Member
OGRE Team Member
Posts: 1525
Joined: Fri Feb 03, 2006 10:37 pm
Location: Austria - Leoben
x 99
Contact:

Post by Wolfmanfx »

Yeah westine you have to sell your work a little bit better :)
westine
Google Summer of Code Student
Google Summer of Code Student
Posts: 62
Joined: Sun Apr 01, 2007 12:12 pm

Post by westine »

Tomat1979's suggestion is totally accepted, there will surely be improvement, in which the "nobody" will be solved.
But now there the most bothering problem is character invisible phenomenon.

I debug it. In OctreeSceneManager::init in OgreOctreeSceneManager.cpp
I enabled setDisplaySceneNodes( true );
setShowBoxes( true );
to show the octree boxes and all scenenodes.

Image normal situation

Image[/url] character disappears and one three colored layer of floor disappears too
User avatar
tuan kuranes
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 2653
Joined: Wed Sep 24, 2003 8:07 am
Location: Haute Garonne, France
x 4
Contact:

Post by tuan kuranes »

Exporter usually take care of including all animation in bbox.

If motion graph generates new animations, you may have to expand bounding box of entity yourself, as bbox may be only large enough to contain all backed animation.
alexjc
Gnoblar
Posts: 21
Joined: Thu Jun 08, 2006 10:56 am

Post by alexjc »

Hi,

Just caught up with this project. Looks interesting.


For future reference, you typically cannot bind arbitrary motions on existing skeletons without retargeting the whole animation (see Mike Gleicher's work). That's the sad thing about all the animation in CMU's mo-cap library, it's all with different skeletons so the price of entry is a motion retargetting tool if you want to combine the animations together.


Alex
AiGameDev.com
alexjc
Gnoblar
Posts: 21
Joined: Thu Jun 08, 2006 10:56 am

Post by alexjc »

Also, where does the BHV exporter live? I looked for it but I couldn't find it in the repository or your RAR bundle...

Alex
User avatar
tuan kuranes
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 2653
Joined: Wed Sep 24, 2003 8:07 am
Location: Haute Garonne, France
x 4
Contact:

Post by tuan kuranes »

@alexjc: indeed motion targeting for those without mocap hardware is needed, but we had to restrcit gsoc subject to realistic goals.
Once we have set current code to main Ogre, that would sure be an important step (even demo would become sexier in this case.)



About BVH, it's in OgreXMLConverter exe tool, and in the

Code: Select all

OgreXMLConverter.exe -addanimation rush.bvh jaiqua.skeleton.xml rush.skeleton.xml 
direct link to svn bvh code

Any further direction guidelines, code review, or comments on the new code from someone in the field like you would be greatly appreciated.

Perhaps automatic rigging and other skeleton extraction like 1 & 2 would be of some help, ideally with some 'loddable' skeleton would be the perfect complement ?
Last edited by tuan kuranes on Wed Sep 03, 2008 9:10 am, edited 2 times in total.
alexjc
Gnoblar
Posts: 21
Joined: Thu Jun 08, 2006 10:56 am

Post by alexjc »

Tuan,

I understand totally about the restrictions on SoC. I was pointing it out to prevent you spending too much time trying to get the CMU mocap BVH working on Jaiqua!

Thanks for the link, I'll take a look :-)

Alex
alexjc
Gnoblar
Posts: 21
Joined: Thu Jun 08, 2006 10:56 am

Post by alexjc »

Tuan,

I will take a look at the whole code and let you know. I foresaw a few necessary changes in the animation states code to support a real blend-tree, but I've not checked out Westine's code yet.

Also, what's the full pipeline you guys use for creating those dummy skeletons before adding the animations? I'd like to try it out with a few different animations!

Thanks,
Alex
User avatar
tuan kuranes
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 2653
Joined: Wed Sep 24, 2003 8:07 am
Location: Haute Garonne, France
x 4
Contact:

Post by tuan kuranes »

I think Westine used Blender to create that dummy skeleton.
Westine, Perhaps you can provide blender source ?
westine
Google Summer of Code Student
Google Summer of Code Student
Posts: 62
Joined: Sun Apr 01, 2007 12:12 pm

thanks and future work

Post by westine »

@alexjc: Thanks for your attention. I am very glad to know a guy from AiGameDev.com, I have subscribed to this site almost for two years, as I am always excited with AI stuff even beyond games.
To get this gsoc project totally practicable, thanks to Ilya Baran's code.I have already looked into autorig and tried to bind cmu's skeleton.
The skeleton embeding and animation format conversion seems to cost at lease one month work.
Motion graph improvement will be added after my current teacher assigned work has been accomplished.
@Tuan,
Source code is sent and thanks.
Post Reply