現在動画に登場してもらっている「にぎやかしミナーヴさん」はLive2Dで作っています。
出来上がったアニメーションはなめらかで満足のいくモノでしたが、動作を追加しようとすると「メッシュ」の設定が面倒に感じてしまいます。
他の方法を調べてみると、Live配信の方向では「Adobe Character Animator(以下 Character Animator)」がすごいよとの記事を見つけました。
今回はCharacter Animatorで「描いたキャラクターをとりあえず動かすために、まず知っておきたいこと」をまとめたいと思います。
詳細は以降で書いていきますが、とりあえず必要なモノの概要を下記に整理しておきます。
目次:
そもそも何ができるの?
ざっくりというと「Webカメラで捉えた顔(体)の動きに合わせて、画面上のキャラクターを動かしてくれる」のがCharacter Animatorです。
この記事執筆現在では、全身の動きもトラッキングできるそうですが、ここは追々試してみたいと思います。
「タグ」で紐づけて動かします
動きをキャラクターに反映させるには、どことどこを連動させるかを紐付ける必要があります。
Character Animatorではこの紐付けをする情報を「タグ」と呼んでいます。
一つ一つ手動で作業するとなると大変ですが、ルールに沿っていればほとんどの紐付けは自動で行われます。
Webカメラで捉えた顔のパーツは自動検出されますし、キャラクターのパーツもレイヤーやグループに特定の名前がついていれば、自動でタグづけがされます。
構造は「英語」で整理しよう
ここでは同社のAdobe Photoshop(以下 Photoshop)を例に話を進めていきます。
自動でタグづけが行われる、大まかなルールは下記になります。
- 名前は英語でつける
- 特定の単語でつける
- レイヤー・グループどちらも対象
- 階層構造はそのまま反映される
この辺りはCharacter Animator内に準備された既存のキャラクタを参考に真似していくと楽だと思います。
特定の単語と言っても、右目なら「Right Eye」と言ったようにほぼそのままです。
日本語のレイヤーやグループがあってもエラーは発生しません。どうしても日本語でないと分かりづらい様であれば、後から手動でタグをつけることもできます。
手動のタグづけが外れることもある
Character Animatorの自動タグづけの処理は、想定した名前が見つかれば自動で処理がされ、それ以外は放置されます。
手動を前提にすれば、レイヤー・グループの構成は自由度が高いと感じました。
ただし、注意点もあります。
タグづけ後、大きく構成を整理してしまうと、手動設定したタグが外れてしまうことがありました。
試行錯誤の度に同じタグを繰り返しつけるのは、やはり大変だ思いますので、レイヤー・グループ名はルールに沿うのが良いと思います。
リアルタイムに反映させるために
Character AnimatorがやってくれるのはWebカメラに映る動作をキャラクターに反映するまでです。
例えばゲームのプレイ画面上にキャラクターを登場させたいと考えた時、それぞれの画面を重ねる場所が別に必要になります。
こちらの記事に沿って必要なモノを揃えてきましょう。
細かい設定等は記事に任せるとして、必要となるものは下記の4つです。
- ゲームなど「キャラクタを登場させたい別の画面」
- キャラクタを動かす「Character Animator」
- 上記の2つ画面を合成する「OBS Studio」
- Character Animatorの画面をOBS Studioに渡すための「NDI プラグイン」
OBS Studioは配信ソフトとしても有名です。そのまま動画配信もできますし、反映状況を録画もできます。
準備してある動画へCharacter Animatorのキャラクターを重ねるということも可能です。
必要なモノとソフトの概要を下記に整理しておきます。
まとめ
画面上でリアルタイムで動くキャラクタを「とりあえずうごかしてみる」までは、思っていたよりも時間がかかりませんでした。
サンプルを使えば、どんなことができそうかを確認するまではすぐにできると思います。
ただ、手持ちのMac Book Proで試した場合はカクツク部分も思いのほかあったので、この辺りの環境整理が今後の課題になりそうです。