home Computer animation
animation
VR devices
screenshots

 

Computer animation is becoming a part of our everyday lives. We find it in almost all aspects of human operations: marketing, medicine, film industry, education, entertainment industry are only a few examples. Movements in computer animation can be predetermined or they can be dynamicaly determined during the animation itself. At first, computers didn't have enough computational power to cope with the later sort of animation, but in the recent years that changed with drastic growth in computer industry.

DANCE environment is used as a background for animation.

 

DANCE

DANCE is short for Dynamic Animation and Simulation Environment. It is developed by Petros Faloutsos and Victor Ng-Thow-Hing from University of Toronto, Department of Computer Science. The software is distributed as an open source material and without any warranty. The authors do not accept responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all. No warranty is made about the software or its performance. Because of this, DANCE if well suited for this project and, also, for experimentation.

 

THE MODEL

In DANCE we define a model of human figure, pictures of which can be seen at screenshots page. This model is composed of joints and links. Therefore it is natural to use inverse kinematics for its animation.

 

INVERSE KINEMATICS

Inverse kinematics is a nonlinear, nontrivial problem. It can have infinite number of solutions. Standard methods of solving involve the use of Jacobian matrix. This method requires a great amount of computational power to be doable in real time. Therefore we use a different method of optimal angle with a few simplifications and a touch of heuristics. There are also some screenshots available at screenshots page.

We use the Nintendo PowerGlove, which is described in more detail on VR devices page, to alter the position of the goal and the IK algorithm tries to follow. The algorithm then moves certain joints so that the joint chain we picked on our model follows the goal.