This tutorial is going to be rather short since the most important
things were discussed in Anim-01-Static
tutorial.
In order to understand how to combine standard behaviour with animation by AnimationCore, it is vital to know, that once AnimationCore sends a frame, it cannot be changed. Therefore, if you calculate some animation parameters too long before executing the animation itself, you might end up with unexpected results.
In order to show you how to prevent this, our agent passes through a
list of states, to know in what part of execution it is. Current state is
held in stateOfExec
.
These states are:
FIRST_ANIMATION
WATING_FOR_FIRST_ANIMATION_FINISH
MOVING_TO_POINT
FAILED_MOVING
RELAXING_MOVEMENT
SECOND_ANIMATION
The names of all states are quite self-explenatory.
FAILED_MOVING
is a special state that is reservered
for...failure of reaching target destination (point). RELAXING_MOVEMENT is
there to allow bot to reach a relaxed state, prior to starting the second
animation.
You can perceive this tutorial as an example of a real life use of AnimationCore in Pogamut.