【メイキング】バーチャルモーションキャプチャーとCinemachineで作るMVが手軽すぎる

memexのぴぼです。
the cabs”二月の兵隊” をカバーしたミュージックビデオを公開しました。
ミュージックビデオの制作にかかった時間は約20時間程度でした。
その際のざっくりとした手順と参考にしたサイトをまとめます。

想定読者

  1. VRChatにアバターをアップロードしたり、Humanoid規格の3DモデルをVRM化するぐらいの用途でふわっとUnityを触ったことがあるひと
  2. Unityはわかるけど映像制作用途に使ったことはないひと

環境・用意するもの

手順

  1. 背景を用意する
  2. モーションを収録する
  3. カメラの動きをつける
  4. 撮影する
  5. 歌詞を入れる

背景を用意する

たとえば以下のような方法が考えられます。
・自分で作る
・Unityアセットストアで入手する
・3Dモデル共有サイトで入手する

今回はSketchfabで見つけたCC BYのモデルをBlenderで改変して使うという手法を取りました。

Old church modeling – Interior Scene – Download Free 3D model by Aurélien Martel (@aurelien_martel) [eb6cf54] – Sketchfab

ダウンロードしたモデルをBlenderで開き、Cyclesレンダーでアンビエントオクルージョンとディフューズをテクスチャにベイクします。
もちろんUnity側でベイクしてもOKです。
個人的にCyclesレンダーでテクスチャの無い白いオブジェクトに影を焼いた質感がとても好きです(NieR:Automataの複製された街っぽい)

詳しい手順はこちらの記事を参考にしました。
【Blender】レンダリングの質感(マテリアル)をテクスチャにベイクする – XR-Hub

手間を減らすためにすべてのメッシュを結合して1マテリアル1テクスチャでベイクしていますが、時間がかけられるなら細かく分割して行う方が良いです。

プロパティパネル -> レンダー -> パフォーマンスのタイル数を上げるとめちゃくちゃレンダリングが早くなることを知ってから作業速度がとても上がりました
レンダリングのパフォーマンスをあげよう! – Togetter

生成されたテクスチャを保存、結合して1つになったオブジェクトをfbxエクスポートして背景作業は終了です。

モーションを収録する

まずモーション収録環境をUnityで構築します。といっても有志の方々が公開してくださっているツール等をダウンロードして配置するだけです。

  1. バーチャルモーションキャプチャー(v0.36~)を用意する
  2. Unityを起動して下記ファイル等を配置する
    1. EVMC4U
    2. EasyMotionRecorder
    3. UniVRM
    4. 任意のVRMモデル

バーチャルモーションキャプチャーと用意したUnityプロジェクトを用いて、表情アニメーションと身体アニメーションのファイル (.anim) を用意します。
この工程についても各ツールの配布ページに詳細な手順が記載されているため詳細は省きます。

なおこの収録は遠隔で行いました。
このUnityプロジェクトを遠隔地にいるボーカルのアランのPCで開き、そのPCをWindows10のクイックアシスト機能を用いて遠隔で操作しています。

カメラの動きをつける

下準備

新規にUnityプロジェクトを立ち上げ、下記を読み込みます。

  • 用意した背景モデルとテクスチャ
  • UniVRM
  • モーション収録を行ったVRMモデル
  • 収録したモーション
  • MVをつけたい音楽ファイル
  • Unity Recorder(Asset Storeから)
  • Cinemachine(Package Managerから)
  • Post Processing (Package Managerから)

CinemachineとTimelineのセットアップを行い、背景・モデルをシーンに配置します。
Timelineタブを開き Add -> Animation Trackからアニメーショントラックを2つ配置します。
None(Animator)と書いてある欄にシーン上のVRMモデルをD&Dします。
2つのAnimationトラックに収録した2つのモーションをそれぞれD&Dして配置します。

Cinemachine及びTimelineの使い方はこちらを参考にしました。
【Unity】Cinemachineの全機能を解説!ありとあらゆるカメラワークを高クオリティに作る方法総まとめ – LIGHT11
【Unity】Unityのタイムラインの基本的な使い方を総まとめ!最短でTimelineを使いこなす – LIGHT11

カメラワークの設定

まずざっくりとしたカット割りを行います。今回は歌詞に合わせて構図を16カット分決めました。

Cinemachine -> Create virtual cameraから必要なカット数分のvirtual cameraを作成します。
上記で決めたカット割に合わせてVirtual Cameraを空間に配置していきます。

空間への配置が終わったらTimeline上に各Virtual Cameraを配置します。

最後にPostProcessの設定を行います。
今回のMVでは以下のエフェクトを使用しました。

  • Bloom
  • Color Grading(とてもだいじ)
  • Vignette
  • Motion Blur

TIPS

制作中躓いた点を3つ紹介します。

Unlitに影を落としたい

Photogrammetoryで使えるUnlitだけど影を落とすシェーダー | STYLY

足がクロスしてしまう

Foot IKにより地面に足が設置するように自動で処理しているため。
対策:Timelineに配置した.animファイルを選択し、インスペクターで「Foot IK」のチェックボックスをオフにする。

Depth of Fieldのピントをモデルに合わせたいが、カメラはモデルに向けたくない

  • Cinemachine Virtual CameraのLook AtにモデルのボーンをD&Dする
  • Cinemachine Virtual CameranのAimを「Do nothing」にする
  • Extensionsに追加したCinemachine Post ProcessingのFocus Tracks Targetにチェックを入れる

撮影する

Unity Recorder導入後、Window -> General -> Recorder -> Recorder Windowを開きます。
Add New Recorders -> Movieを選択してRecorderを追加し、下記の設定を行います。
Format: MP4
Output Resolutions: FHD – 1080P

START RECORDINGを押したら録画が開始されます。
デフォルトでは停止の際は手動でSTOP RECORDINGを押す必要があります。

参考:
Unity Recorder の使い方 – Qiita

歌詞を入れる

Unityで録画した動画ファイルにお好みの動画編集ソフトで歌詞をつけます。
ここではAviUtlを使用しました。
また、Timelineのプレビューと録画したmp4ファイルで音とリップシンクモーションが一致しなかったため、この段階で手動でオーディオの方をずらしました。

終わりに

制作手順は以上となります。
何か不明点があれば @memex_pibo までお気軽にリプライをどうぞ。

最後に、バーチャルモーションキャプチャーを始めとしたツール群の製作者様、Contributorの皆様のおかげで、本質的に取り組みたいこと(今回は音のクオリティ向上)により時間をかけることができました。
心より感謝申し上げます。

Please follow and like us: