【無駄のないVtuber作製講座】Part 5-2: Blueprint 編

posted in: 3D Animation, Technology | 0

前回までは、シェイプキーを利用して、人間の表情とVtuberの表情をリンクさせる設定を行いました

例えば、人間が左眉を下げたら、Vtuberネンズ君も左眉を下げるといった具合ですね

本章ではこの続きとして、残りのボーンアニメーション設定を完了させます(図1)

このボーンアニメーションは主に2つに分けられます

Live Linkを用いない体部分の動作と、Live Linkを用いる顔部分の動作です

体部分に関しては、W, S, A, Dキーに応じてキャラクターが前後左右へ動く際に、走る動作を示すように設定します(この設定がなければ、キャラクターは棒立ちのまま動くことになります)

顔部分に関しては、例えば、顔が傾く際には、首のボーンが対応して回転するようにその変形量や変形方向を設定します

これらのアニメーション設定はまとめてブループリントから行うことができます

ブループリントとは、Blenderにおいてはノードに対応するもので、計算結果の入出力を視覚的に接続してプログラミングを行う手法となります

図1. 自作VtuberキャラのLive Linkに関する残りの設定項目

ブループリントの設定画面に入ります

前章で作製した「キャラクター名_BP」というファイルを開きます

このファイルのAnimGraphにおいて、右クリックからNew State…と検索し、「新規のステートマシンを追加」を選択しましょう

ここでNew State Machineが出現しますので、左ダブルクリックからこれを開きます

ステートマシンを開いたら、右クリックから”Wait”と”Run”の2つのステート(状態)を追加し、図のようにドラッグで接続します(図2)

このように二つを双方的に接続すると、ある場合においてはキャラクターがRunの動作を行い、また別の場合においてはキャラクターがWaitの動作を行うようになります

ある場合とは、WSADキーのいずれかが押されることでキャラクターが動き始めた場合のことです

そして別の場合とは、WSADキーが押されず、キャラクターが止まった場合です

まずは、キャラクターが走り出す際にアニメーションがWaitからRunに切り替わるような設定を行います

WaitからRunにつながる矢印の隣にある、横向きの矢印をダブルクリックします

Float型の変数であるSpeedをマイブループリントに追加し、さらにそれをドラッグ&ドロップでノードとして配置します

Speedが0.1を超過したらアニメーションの切り替えが起きるように、比較演算として大なり( > )を追加し、その下側に0.1と入力したら、上側をSpeedと接続し、出力結果をCan Enter Transitionに接続します

反対に、Speedが0.1以下の場合はアニメーションがRunからWaitに切り替わるように、もう一方の条件設定も行なっておきましょう

図2. 体部分の動作を決めるブループリント

次に、Wait時のアニメーション設定を行います

ベースとなるアニメーションとしてWaitが再生され、そこへiPhoneで読み取られた顔の表情がブレンドされるようにノードを接続します(図3)

背骨や下顎の回転についてはボーンの回転で再現するため、対応する変数(図のheadYaw, headPitch, headRoll, jawOpen)を配置しておきます(変数への値の代入はあとで行います)

これらの変数は対応するボーンのRotationの値へ接続した後、一連の出力結果をResultに接続し、コンパイル&保存します

以上がWaitステートの設定です

Runステートの設定については、アニメーションWaitをRunに置換した形となります

図3. ブループリント設定の全体像

先ほどの設定では、定義した変数への値の代入が済んでいなかったので、これを行います

イベントグラフから、ノードを図4のように配置します

このノードではData Resultから取得された顔や下顎の回転角が、先程定義した定数にセット(代入)されています

また、Get Velocityでは速度を取得しています

この速度はVectorLengthによってスカラー値である速さに変換され、変数名Speedの値として代入されています

図4. 変数に対してデータを代入するブループリント設定

最後に、これまで作り上げてきたブループリントをキャラクターに反映させましょう

コンテンツ>ThirdPersonBP>Blueprintsの位置にあるThirdPersonCharacterファイルを開きます(図5)

Vtuberキャラが現れますので、これを選択しましょう

右側にあるアニメーション項目のAnim ClassからBlueprintファイルを選択し、コンパイル&保存しましょう

これでブループリント設定は完成ですので、最後にテストプレイを行ってみましょう

プレイの横のメニューからアクティブなプレイモードを選択し、新規エディタウィンドウ(PIE)を開きましょう

iPhoneで読み取られた顔の表情がVtuberに反映されるはずです

加えて、キャラクターの停止中はWaitのアニメーションが流れ、WSADキーによる操縦中はRunのアニメーションが流れるはずです

Live Linkを通して読み取られた顔の表情と、予めBlenderで作製したアニメーションが融合したことになります

以上で、Vtuberの作製は終わりです!

お疲れ様でした

次回が、無駄のないVtuber作製講座の最後である「録画設定」となります

図5. キャラクターへのブループリントの反映方法

コメントを残す