Live2Dアドベントカレンダー24日目
初めまして、ひたつらと申します。
VTuber向け、「配信用高可動域モデル」を主に作っています。「配信用」かつLive2Dではあまり推奨されない「高可動域」。目指すところがとてもニッチです。こんなモデル(↓)を作っています。
shuffle所属、「兎々錦 サキ」
今回は、配信用高可動域モデルを作ってきた中で、私がこれまでに感じたことや小技を紹介していこうと思います。ベテランの方は「それ知ってる」って思うところも多々あると思いますので、程よく流し読みしてもらえたら嬉しいです。
① 「配信用高可動域モデル」について。なんでわざわざ「配信用」を強調するの?
Live2Dのゲームへの搭載に始まり、地上波、海外進出など、VTuberの認知が広がっています。Live2Dモデラ―さんもそれぞれの得意技や特色を生かし、
〇 3Dのような正確な動き
〇 精密な物理演算
〇 可愛いアニメーション
など、素晴らしいモデルが多く作られていますね。
どれにでも使える汎用モデルも魅力的ですが、動画、配信にゲーム用と、目的に応じて制限や、気を付けるべきポイントや削っても良いポイントなどが変わってくるのではないか…と考えています。
② VTuberの活動の主流は「動画」と「配信」
いずれ新しい活動は広がってくると思いますが、現在、VTuberの活動は動画と配信に集中しています。
動画であれば、編集ソフト側で効果を入れることが可能です。多少重くとも極論動画の描き出しが出来ればよいので、テクスチャサイズ、枚数やデフォーマ構成など、制限はありません。つまり、これまでのモデル作りのノウハウが生かせるのです。最も自由なモデルが作れますね。
それに対して配信用のモデルではどうでしょうか。
配信用では、「カメラを使った操作性」「パラメータ制限」が多いため、動画用モデルに比べて少しだけ気を付けないといけません。
それでは、配信用モデルを作るうえで具体的にどんなところに気を付けなければならないのでしょうか。私がよく作っているFacerigの使用を前提としたモデルについて、いつも考えていることを書きだしてみます。
③ 配信は画面映えが難しい?ならばどうする?
配信をよく見てみると、雑談配信ではモデルが中央、実況配信で左右下に配置されていることがほとんどですね。これに実況画面、コメント面で占領されます。
配信はリアルタイムの空気感がとても魅力的なのですが、これ、とにかく「画面映え」させるのが難しいんですよね。リアルタイムゆえ動画のように効果や編集をすることができません。
ならば、どうやって画面を飽きさせないようにするか。
これに対するLive2Dモデルからの回答の一つが、リアルタイムに動かせる「可動域」だと思っています。大きく動くことで、飽きを防ぎ、画面映えを狙うのです。
④ キーバインドでの表情変化、アニメーションは意外と使いにくい
Facerig、キー押下でパラメータのオンオフが可能です。多くの場合これに赤面や青ざめ、泣きなどの表情変化を入れていると思うのですが、実際扱ってみるとこれが使いにくい…。
それもそのはず、表情はその場の空気でコロコロ変わるもの。一々キーでオンオフするのって、結構しんどいのです。コントローラー持ってたらキーを押せないので、使いこなしている配信者の方をあんまり見たことがない…というのは、つまりそういう事なんだろうな、と思います。ですので、最近のモデルでは笑顔を口幅に設定したり、ジト目を眉に連動させたり…と、カメラの前で顔だけで操作できるよう工夫されています。
キー押しでのアニメーションも同様で、Facerigは予め作られたアニメーションを再生することしかできないのです。自由にアニメーション出来るならともかく、これは今後に期待するしかありません。
そうはいってもキーバインド、良い機能です。このままにしておくのはもったいないので、何とかして活用したいですよね。そこで、以下具体的な提案です(知ってる、使ってる人も多いと思うのですがゴメンね)。
⑤ キーバインドでのパラメータのオンオフを使って、「異なる動き」を実装してみたらどうか
可動域を増やすためにキーバインドでのパラメータ切り替えを使ったモデルがこちら
Vtuberの和久井真路(@wakui_V_factory)さんのモデルでは、動画にあるように、「体の傾き」と「体の軸移動」の2種類の動きを実装しています。これは、Facerigで頭の左右位置で操作する「体の回転Z(ParamBodyAngleZ)」のパラメータに、異なる2種の動きを設定しています。
これで、歌う時には横揺れもできるし、通常状態なら屈んだり伸びをしたりすることができます。表情みたいにコロコロ変えるものでもないので、その日の気分で変えたり配信内で自由に切り替えたりできますね。
具体的な実装方法についてはとっても簡単で、体の傾きのパラメータを付ける変形デフォーマ「体Z」に、
・ 「体の回転Z(ParamBodyAngleZ)」を3点
・ 「体スイッチ(ParamBodySwitch)←名前は暫定」を2点
付けるだけです。
ParamBodySwitchが0の時のParamBodyAngleZとParamBodySwitchが1の時のParamBodyAngleZの動きをそれぞれ作るイメージですね。
ParamBodySwitch(0→1)はFacerig側のキーバインドで切り替えします。
「体の傾きを搭載したいけど、左右の軸揺れも実装したい!」と悩む方、ぜひ使ってみましょう。
⑥ その他稿可動域モデルの小技
一つだけでは味気ないので、もう一つ紹介しましょう。高可動域モデルでは必須の小技「パーツの前後切り替え」について。
横髪など、真横を向いたときには顔の裏に、反対を向いたときには顔の表に来ますよね。
↑こういうパーツ。
これ、反対を向いたとき、顔の後ろに来てるのですが、描画順はいじっていません。顔をはさんで上下に2つパーツがあるのです(コピーペーストで増やしてもよいです。)。
同じXYのデフォーマに横髪パーツ2つを入れ、角度Xで不透明度で操作します。これで、角度によって横髪が前に行ったり後ろに行ったりする(ように見える)ということですね。
不透明度を使うのはモデラ―さんによって好みがわかれるところですが、これを応用すれば、体が左右を向いたときに腕が体の前に来る…といった応用方法もあります。
パーツの前後移動はこのほかに、パーツの描画順を調整するやり方もあります。こちらはパーツが増えない代わりに、前後移動する瞬間にとても俊敏に入れ替わるので、どちらか自分に合った方法を採用してもらえればと思います。
それでは、大した記事ではありませんでしたが、ありがとうございました!いよいよ明日はレジェンド、rariemonn先生ですね。とても楽しみです。