【Live2D】笑顔についての考察・1
笑顔ってどうやって見せたらいいの?
この記事を書いている人 -WRITER-
イラスト&Live2Dモデラー&なろう作家:高槻和衣
埼玉県在住。
高校時代から同人活動を通して創作活動を開始、卒業後デザイン系の学校へ通いながら漫画家アシスタントへ
一年後チーフになったのをきっかけに中途退学、そのままプロデビュー。
2022年1月小説投稿サイト「小説家になろう」への小説「絶望令嬢の華麗なる離婚」の投稿をきっかけに小説家としてもデビュー
晴れたら晴れたで暑いww
でも夜は涼しいので日中外出しない引きこもりは楽ですw
Live2DEditorに標準でついているパラメーターに「左目 笑顔・右目笑顔」という項目があります。
目を閉じたとき笑顔のパラメータがそれぞれ0の時は普通の閉じただけの目
笑顔のパラメータが1になると
目の形が変形して笑顔になるんだなあと漠然と考えておりました。
モデルを作り終えてFaceRigに実装した時に知ったのですが、右(左)目笑顔パラメータってFaceRig側にはないパラメータなんだそう。
じゃあキーバインドかな?と思いつつも一つのキーに2つのパラメータは設定できない仕組みなので両目設定するならキー2つ必要。
同時に押してもタイムラグが出るっぽいので違和感は出そう。
表情とかパラメータで腕の上げ下げとかも設定したいので笑顔のために限られた枠を2つも使いたくない…笑顔のたびにキー打つのも面倒そう……ということでパラメータのキーバインドはあきらめほかの方法を模索します
どんな方法があるのか
調べたり教えてもらったりで得た情報だと3種類
- 笑顔の絵を別に描いてパラメータで表示のオンオフを変えて表示
- 笑顔のモーションを作って表示
- 口角を上げると連動して笑顔になる
1つ目はパラメーターを一つにまとめて表示する方法。
新しく笑顔になってる目のパーツを制作して読み込み、通常の目のデフォーマの親に表示の切り替え用のデフォーマと、切り替え用の目のオブジェクトの親に笑顔目表示用のデフォーマ
2種類つくる。
笑顔表示用のパラメータを新規で作る(この時は「笑顔の切り替え」パラメータ)
画像をそれぞれ目表示デフォーマの中に入れ、通常目の切り替えに目の変形をつけるデフォーマの親に切り替え用のデフォーマをセットして
新しく作ったパラメータに0 0.1 1.0と3点キーを作ってOK
デフォルトの0の位置で笑顔表示デフォーマの不透明度を0%切り替え用のデフォーマの不透明度を100%にして、0.1のところで笑顔表示を100%、切り替え用を0%にすると瞬時に切り替わったように見えます
(0~1の幅だとじわーっと半透明になって切り替えするのが見てわかっちゃうので、切り替えする幅は出来るだけ短くするのがいいのだそうな)
メリットは作りやすいこと
デメリットは口の連携ができないので表情によっては違和感が出るとか
キーバインドなのでほかにさせたい表情や動作を一つあきらめないといけないこと
ゲーム配信とかお絵描き配信とか手が空かない配信だとキーバインド操作がそもそも難しいことですか。
2つ目はモーションで笑顔を作る
実際は表情用のexp3.json Facerigは対応しておらず、Vtubestudioは使える感じ
でもVtubestudioも顔のトラッキングと表情のモーションの優先度がイコール、同率らしいのですよ
コミュニティで教えていただいたのですが
動作優先度
物理演算出力>キー押しモーション>キー押しパラメータ=フェイストラッキング>=アイドリングモーション
だそうで。
だからトラッキング上で目をあいていると表情ファイルを実行しても目は1より下の数値に下げられないので目は開いたまま、口元は1に上がるだけだから可能なので口元だけにっこりした表情になるということらしいので、ニッコリ笑顔は難しいとのこと
なので優先度の高いキー押しモーションならFacerig,Vtubestudioどちらでも行けそうです
ただし、モーションの終了時の表情で固定されるのでリセット用のモーションが必要なので2つのモーションファイルが必要になるので、6個しかモーションのキー設定できないFacerig,だと狂おしい状況になるのはパラメータ制御と変わらないですね
上記2点を試した後結局は3つ目の唇の口角が上がると笑顔になる方法を実装しました
長くなるので3つ目の方法は次の記事で