btMultiBody + inverse dynamics -> character controller

Post Reply
cloud9
Posts: 5
Joined: Sat Nov 19, 2016 9:47 am

btMultiBody + inverse dynamics -> character controller

Post by cloud9 »

Greetings.

The problem I've set myself is to take a model (actually from miku miku dance) convert to a multibody representation with hinge and spherical joints and ultimately try to hit keyframes in some motion data.

I've done the first bit creating the multibody, droped it spun it around etc, and that looks good. The next problem (the big one) is the inverse dynamics, so I tried using all hinge joints and just copying sample code and doing exactly what the kuka demo does, which works.

But if the base isn't fixed the thing goes ballistic.

If I use a spherical joint it crashes, and its even nice enough to tell me why

b3Error[/OgreNew/bullet3-master/Extras/InverseDynamics/btMultiBodyTreeCreator.cpp,185]:
spherical joints not implemented

What I'm looking for is advice, can I do what I want to do? can I do it easily? how would you go about doing this?
benelot
Posts: 350
Joined: Sat Jul 04, 2015 10:33 am
Location: Bern, Switzerland
Contact:

Re: btMultiBody + inverse dynamics -> character controller

Post by benelot »

Hello,

Do you really need the spherical joints? Maybe you could replace some of them with hinge joints approximating the most important axis of movement. Otherwise, you can always add two hinge joints one after the other separated by a tiny link to get something similar to spherical. The other problem is going to be hard. From what I believe it is hard to get your system to not tip over because that needs balance, not only inverse dynamics. You could start working on it without gravity, that makes it easier, because you can dance in mid-air. Maybe that is more satisfying :)
Post Reply