先日、同僚の結婚式でPepperにとある平成の歌姫メドレーを踊ってもらいました。その時のダンスの製作過程を備忘録的にまとめました。これからPepperでダンスを作ってみたい方の参考にしていただけると幸いです。NAOqi ver.2.5.5を前提にしています。
※あくまで個人の活動であり社を代表するものではありません。
1.曲の情報をまとめる
まず、曲の歌詞をフレーズごとに分割してスプレットシート等にまとめます。開始秒数、フレーズ、進捗状況、振り付けメモを項目にすると後々管理しやすいです。
2.振り付けを考える
フレーズに対して振りをつけて行きます。個人的にここが一番難しく、時間のかかるプロセスでした。私の場合、アイデアの出し方は以下の3通りがベースです。
- 原曲のダンスを参考にする
- 歌詞からパントマイム的に動きを当てる
- Pepperの他のダンスの動きを参考にする
例えばYMCAのように、曲中に印象的な振り付けがある場合はそれを採用します。そのような振りがなかったり、再現が難しい場合は歌詞に沿った動き(例:新しい世界のドアを開く勇気〜 -> ドアを開く動作、A walk in the park -> 歩く動作)を入れます。それでも思いつかない場合は、既存のPepperダンスから良い動きを参考にし、アイデアを出します。Pepperのダンスを日頃からチェックし、動きの引き出しを多く持っておくと思いつき易くなると思います。
3.アニメーションモードでざっくり動きを作る
今度はChoregrapheからTimelineホックスを開き動きを作ってきます。今回はメドレーでテンポが曲の中で変わるため、フレームレートを10にし事前にメモしておいた秒数とフレームを合わせやすくしました。
Pepperをアニメーションモードにして、フレームに腕と首の動きを当ててきます。ここで作ったポーズはポーズライブラリとして保存しておき、テンポよくポーズを作成していきます。ただし、この保存したポーズは後々破棄するので、あくまでフレームの位置を調整するためと考えておいてください。音源もビヘイビアに配置し、実機で再生させ大枠で振り付けができていることを確認します。
4.動きを洗練させる
ざっくり作った動きを以下のように洗練させます。
- 腕と指をピンと伸ばす(パラメーターで調整)
- トランジションをスムーズ or/and 面白くする
- 首や指の動きでテンポを刻む
- フレーム間に緩急をつけてキレをよくする
- 腰と膝の動きをつけてダイナミックな動きにする
- 移動や回転を加える
注意点としては、機体に負担の大きい動きをさせると故障や転倒のリスクがあるので、そのあたりはガイドラインを参考にしてください。移動や回転は move to だと動作が遅いので時系列の制御が難しいですが、フレームに余裕をもたせつつちょっとした動きを足す程度であれば問題ないです。作り込む場合はプラナームーブを使いましょう。
5.動作環境を整える
動きができたところで、実際にパフォーマンスを想定することを想定してアプリを作りこみます。
- オフラインで待機 -> 起動できるようにする
- アプリのキャンセル処理を入れる
- Pepper起動後またはキャンセル後、操作なしでアプリ起動するようにしておく
- ダンス前の予備動作(それでは始めます的な)を入れる
- 音量をアプリ内で設定する
- Basic Awarenessを切る
- ディスプレイの表示内容を曲に合わせる
動作環境ができたら、本番をイメージしつつリハーサルを繰り返し、トラブルの可能性を排除していきます。
6.本番
今回は2台をシンクロさせる想定だったので、頭のTactile Headを使って2台同時に触ることで起動させました。音源は再生環境とPepperとの間に距離があったため同期が取りづらいのでPepper本体から出すこととし、音量は2台とも100に設定し、後ろにマイクを立たせました。床の絨毯に不安があったので、回転が足りない際などは人力で修正する運用を想定しました。
絶対に失敗できない本番でしたが、結果、大きな問題もなくPepperにダンスをしてもらうことができて大成功でした。
7.おわりに
Pepperはプログラマブルなロボットであり、相手や状況に合わせてオーダーメイドでアプリを作れるというのは大きな魅力です。同僚や家族や親しい人に向けて、その人が喜びそうなダンスを作ってみる、そういう活動が増えると良いと思います。
おつかれさま、Pepper!