jarllarsson / promenade

Code repository for Master's Thesis: "Performance of Physics-Driven Procedural Animation of Character Locomotion For Bipedal and Quadrupedal Gait"
Other
24 stars 4 forks source link

Falling directly on start. No strength in legs whatsoever. They should be straight at least, to allow for future movement. #10

Closed jarllarsson closed 9 years ago

jarllarsson commented 10 years ago

The model seems to weak to even lift its feet. It is allowed to fall unoptimized, but there should at least be some form of strength in the legs at start.

Discovered that there is a large difference in the VF forces being applied in unity and C++. The ones in C++ seems to grow infinitely large (downwards), the ones in Unity seem to more correctly match the error in orientation needed to be adressed. Can this be due to the currently larger PD gain in the LF in c++? Either way, the direction (down) still seem off in that case.

I've also made the feet huger and uniform, in order to make the model overall stabler, while I try to find the source of the absolute non-stiffness in the legs.

Creating a heavier LF results in stronger corrective movement in the legs. Probably as it then forms a firmer base for applying the GC VFs.

jarllarsson commented 10 years ago

The VF forces are large and points down even if we have a very weak LF PD driver (gain of P=30). The VF magnitude is neither affected by switching the LF feedback on/off. Nor GCVF / PDs.

jarllarsson commented 10 years ago

The behaviour of large downpointing VF vectors is only exhibited in Unity after the character has fallen and only on stance legs and never on the LF. In C++ it is from the very start, on all limbs at all times. The correcting VFs in Unity (before fall) points towards the wanted position for each limb, and only with the magnitude needed to reach that point.

jarllarsson commented 10 years ago

In C++ the vectors do have larger magnitude in stance, but even in swing they are too large and in the wrong dir.