Mastering Animation labels ¶
In this tutorial, we will synchronize Pepper’s speech with its animation, using labels in an Animation.
Before stepping in this tutorial, you should:
- Know how to use Android resources.
- Be familiar with the Action notion. For further details, see: Running Actions on Pepper.
- Be familiar with the Animate action. For further details, see: Animate.
- Be familiar with the Say action. For further details, see: Say.
Let’s start a new project
- Start a new project, let’s call it AnimationLabelPepper.
- Robotify it and make sure it implements the QiSDK & the Robot Life Cycle.
For further details, see: Creating a robot application.
Adding labels to an animation resource¶
In Android Studio, choose File > New > Import animation…
The Animation Browser / Viewer opens:
In Action > Dances, select the dance_b001 animation and click the Select button.
Result: The dance_b001.qianim file is added to your res/raw folder and opens.
Add a label layer and create the following labels:
For further details, see: Creating labels.
|Close the animation file window and return to your MainActivity window.|
Building the animation¶
From this animation file we must now build an Animation object.
To do this, we use the
onRobotFocusGained method, add the following code:
Using the animation¶
We will animate Pepper by using the Animate interface.
Animate field in your
Create it with an
AnimateBuilder in the
We used the previously created
Animation to set the animation Pepper will perform.
Running the animation¶
We can now run the
Say the label names when reached¶
To be notified when a label is reached, let’s use the
For this example, we will make Pepper say the name of the reached labels.
Add this before the run:
Do not forget to remove this listener on
Animate in the
Let’s try it¶
The sources for this tutorial are available on GitHub.
Install and run the application.
For further details, see: Running an application.
Choose “Mastering Animation labels”.
You should observe the following:
That’s it! You can now synchronize events with Pepper’s animations!