知識0からUnityでVRMアバターにチキチキバンバンを躍らせる方法解説!

最終更新日2022年5月21日

先日、大人気アニメのパリピ孔明公式からOPのチキチキバンバンのダンスモーションが配布されました。
Unityを使う事で3Dアバターに躍らせることが可能なのですが、Unityって難しそうですよね。

今回はVRMアバターさえ持っていれば誰でも知識0から躍らせるところまで出来るように解説していきます。
個人勢として活動している3D系のVTuberの大半はVRMモデルだと思うので、VRMアバターと書いておきましたが、実際には別にVRMでなくても可能です。

この記事を読めば、初心者でもUnityでチキチキバンバンが踊れます!

チキチキバンバンのモーションデータをダウンロードしよう

【ダンスモーションデータ】TVアニメ「パリピ孔明」OPテーマ「チキチキバンバン」【踊ってみた】


特に難しいこともないので、ダウンロードボタンからZIPファイルをダウンロードします。
解凍して使えるようにしておいてください。

Unityに躍らせたいVRMアバターを読み込む

配布されているモーションデータはUnityで使えるものになっています。
なので、大前提としてUnityに躍らせたいアバターを読み込ませて動かせる状態にする必要があります。

Unityの導入やUnityにVRMモデルを読み込む方法は別記事で解説しているので参考にしてください。

ここまで完了してVRMアバターを動かせる状態になったら、今回の本題に進んでいきます。

実際に躍らせてみよう

モーションデータをUnityに読み込む

ダウンロードしたモーションデータを解凍すると「CIKICIKIBAMBAM_eiko.fbx」というファイルがあります。
このファイルをUnity上の「Assets」上にドラッグ&ドロップします。

これだけでインポート(読み込み)自体は完了です。

インポートできると、こんな感じのアイコンが表示されます。
Assetsウインドウの右下にシークバーがあって、アイコンサイズを変更できます。

小さい表示だとこんな感じになってますが、特に影響しないので見やすい方で大丈夫です。

モーションデータの設定をしよう

「Assets」に読み込んで表示された「CIKICIKIBAMBAM_eiko.fbx」をクリックして選択します。
その状態で「Inspector」(デフォルトだと多分画面の右側にあると思います)を見ます。

そこにModelやRigというボタンがあると思うので、その中の「Rig」を選択します。
すると「Animation Type」という項目がありデフォルトでは「Generic」になっているかと思います。

「Humanoid」に変更して「Apply」を押して反映させます。

アバターにモーションを反映させよう

「Assets」に表示されている「CIKICIKIBAMBAM_eiko.fbx」には三角のアイコンが表示されていると思います。
これをクリックすると中身が更に表示されます。

中身が2つで、人のアイコンのものが存在しない場合は、1つ前のRigからHumanoidに設定するという部分がうまく出来ていないと思います。

ここに表示されている三角形のアイコンを「Hierarchy」の躍らせたいVRMモデルにドラッグ&ドロップします。
するとAssetsにVRMモデルのファイル名と同じ.controllerが追加されます。

この時点で動き自体はアバターに反映されていますが、ここまで紹介してきた手順で進めてくると恐らくVRMモデルは座標が固定された状態になっています。
例えば歩くモーションをしても、その場から動かないといった感じです。

このままでは違和感があるので「Hierarchy」からVRMモデルをクリックして選択します。
「Inspector」に情報が色々出てくると思うので、その中から「Animator」を探して「Apply Root Motion」にチェックを入れます。
ここにチェックが入っているとモーション通りに座標を移動してくれるようになります。

再生してみる

ここまで来たら実際にチキチキバンバンのモーションを再生してみましょう。
Unityの画面上部にある再生ボタンをクリックすると動き出します。

再生すると「Scene」タブから「Game」タブに強制的に切り替わると思います。
Gameタブは空間内に設置されたカメラ映像になります。
実際に出力される映像はGameタブが正しいのですが、現時点ではカメラ位置調整はしていないので、再生しながら一度Sceneタブへ移動して確認してみましょう。

動画として出力しよう

背景を変更する

3D空間なので、オブジェクトを配置していけばそのまま背景として空間を作れます。
それ用のアセット(配置する物体とかのデータがまとまったデータの集まり)が配布されていたり、ストアで販売されていたりします。

この記事内で解説すると長くなりすぎるので後程、個別の記事で用意する予定です。

今回は簡単な操作で対応でき、それっぽい動画を作る素材として、クロマキー合成できるように背景を単色にしてみようと思います。

「Hierarchy」に「MainCamera」があるので、これをクリックして選択します。

すると「Inspector」にMainCameraの設定が出てくるので、「Camera」の「ClearFlags」を変更します。
デフォルトだと「Skybox」になっていると思うので「SolidColor」に変更します。
その下に「Background」で色を指定できるので、任意の色を指定すると再生した時に出力される映像の背景が単色になります。

カメラ位置を調整しよう

試しに再生した時に「Game」タブの映像に切り替わってカメラ位置が合っていなかったと思います。
実際に出力される映像はこのGameタブの映像なのでカメラの位置を合わせる必要があります。

「Hierarchy」の「MainCamera」をクリックして選択した状態で「Scene」の映像を見てみるとこんな感じになっています。
白いカメラみたいなアイコンが空間内のどこにカメラが存在しているかを表しています。

画面右下に表示されているウインドウはカメラ視点でどう見えているかが反映されています。

カメラから赤・青・緑の矢印が出ています。
これをドラッグすることで空間内のカメラの位置を動かすことができます。

カメラの「Inspector」から「Position」で位置「Rotation」で向き(角度)を直接数字で指定することもできます。
ドラッグで微調整が難しい場合は直打ちで調整しましょう。

アバターが良い感じに映るように動かしてあげましょう。
Sceneで映っている場所はホイールドラッグや右ドラッグで移動できます。

録画する

再生した画面をOBSなどで取り込んで録画してもいいのですが、Unityに再生している映像を動画として出力するUnityRecorderというアセットがあるので、今回はこれの使い方も覚えておきましょう。

メニューの「Window」から「Package Manager」を開きます。

するとこんな感じの画面が出てきますので、左上のプルダウンを確認して「UnityRegistry」にします。
多分デフォルトでなってると思います。

その状態で検索窓にRecorderと入力すれば出てくるので、画面右下にある「Install」をクリックしましょう。

これでレコーダーのインストールは完了しました。
あとは設定をして実際に録画します。

メニューから「Window」>「General」>「Recorder」>「Recorder Window」と開きます。

こんなウインドウが出てきます。
FPSはモーションデータが30fpsなので、そのままでいいと思います。
「+Add Recorders」から「movie」を選択すると新規で録画の設定が出てきます。

Sourceは「GameView」のままで大丈夫です。
OutputResolutionは解像度なので、任意の解像度を設定してください。

フォーマットに関してもMP4で困ることはないと思うので、そのままで大丈夫です。

OutputFileのFileNameのところは「+Wildcards」がデフォルトだと思います。
この状態ならファイル名が重複しないはずなので、いじらないこと推奨です。

出力される動画ファイルはPathの場所に出てきます。
保存場所を変えたい場合は任意で変更してください。

ここまで設定ができたら「START RECORDING」をクリックすると再生がはじまって録画されます。
録画中は「STOP RECORDING」になっているので、クリックすれば録画が停止してファイル出力されます。

出力した動画をクロマキー合成したらこんな感じにできます。
折角の3Dなので本当は3D空間で踊った方が映えるとは思いますが、とりあえずUnity初心者向けということで今回はこのような形にしました。

Comments are closed, but trackbacks and pingbacks are open.