VRゲームに自分の姿を好きなキャラモデルで表示して撮影する
目標
この記事で目指すところ
事前準備
- VR機器(Vive なら全身キャプも可能)
これがそこそこ値が張る。注意点はあくまで PC 用VR機器。
WindowsMR は試したという報告が無いので不明。とりあえず 【国内正規品】 HTC VIVE PRO 【Amazon.co.jp限定】オリジナルPC壁紙配信 付 (10万↑) と Oculus Rift S PC接続専用 高性能VRヘッドセット&コントローラー (5万ちょっと)はまず確定で動くっぽい。
因みに、Oculus は本体センサー方式なので、時間経過で座標の測定誤差が増えてくるらしい。 - そこそこ良いマシン
個人的な印象では GeforeceGTX1060 位は最低欲しい。ソフトによるけど。
1060 は流石にもう在庫がないだろうし、1660 が 3 万切ってる感じでした
以上です。
ざっくり流れ
1. VRゲームと LIV を入れる
基本的に Steam 対応の VR ならそれなりにいけるっぽい。
ということで BeatSaber
加えて、LIV (無料)を入れる
ちょっと説明すると、LIV というツールは以下の機能がある。
起動順序は LIV が先で、「LIV コンポジターをスタートする」(コンポジッターとは、合成機って意味)
起動するとこんな感じ
「シンクロとスタート」を押すと、ゲームが起動します。
この時真っ黒の画面に映像が映ります。
これが LIV のVR中カメラ映像ですね。
ここでカメラ調整とかしたくないので、ゲームだけ修了します。
実写映像を合成するならこのままできますが…まぁ放置で。
2, VRM モデルを用意する
手段はいくつかありますが
- VroidStudio とかで自作する
https://vroid.com/studio/ - Unity の Humanoid モデルを変換する
VRM モデルをガチで作りたい人は コレ 見て頑張ってください。
俺はあきらめたよ… - VroidHub から適当なフリー VRM を拾ってくる。
https://hub.vroid.com/ - Booth で VRM のモデルを買う
因みに、VroidStudio で使えるテクスチャとか有償無償含めて転がってるので、見てみるといい - ニコニコ立体 からライセンスを確認しつつ使う
ライセンスに関しては慎重に。私はサイトは紹介しますが、利用は自己責任で。
因みに私は Booth から素材を集めつつ、VroiStudio で自作しました。
VroidStudio で一旦エクスポートした VRM モデルは編集できないので、服装とか変える場合はその度にエクスポートしましょう。
3. VirtualMotionCapture を突っ込む
このソフトは VRM モデルをVR機器に合わせて動かすソフトといえます。
インストールして、起動するとこんな感じ
「VRM読込」でまずはモデルを読み込む。
「カメラ」を選択して、適当に画面配置を変更します。
「フリー」で操作するときは癖があります。元の位置に戻すような操作はないので、にっちもさっちもいかなくなったら VirtualMotionCapture をフォルダごと消して再度入れるしかなくなります。
いずれの操作も自分がカメラを覗いている前提で、カメラの位置を操作します。
- マウス右クリック移動: カメラの向きを変更
- マウスホイール: カメラの前後
- Altキー + マウス左クリック移動: モデルの位置を中心にカメラを回転移動
- マウスホイールクリック: カメラの上下左右移動
因みに、BeatSaber だとこんな感じ。
下半身を少し隠すのは、下半身までモーションキャプチャーできてないから(下半身分のセンサー持ってないから)。
頭と両手だけでキャプチャすると久が曲がって映ったりとかいろいろする。
ここまで来たら、「設定 > 詳細設定」のダイアログを開き
- 「仮想Webカメラ設定 > インストール」を実行。
(これで LIV に「キャラクターを撮影しているウェブカメラがある」と認識させる)
- 「externalcamera.cfg(フリーカメラ座標を設定)」項目から
2.1. コントローラ番号: 「トラッカー(LIV Virtual Camera(Tracker))」を選択 2.2. 「externalcamera.cfg の書き出し」をクリック。(因みにファイルはわかりやすいところに。名前の変更はしてはいけない) - 解像度設定を「1920x1080」とかにして「適用」
- 「仮想Webカメラを有効にする」にチェックを入れる
この時点でキャラクターモデルを撮影しているWebカメラがあるように見せかけることができる
一応、コントロールパネルの「背景色」を「GB」に設定しておく
4. LIV に VirtualMotionCapture 映像を設定
LIV でこの映像を読み込みます。
- カメラを追加します。
- タイプを「ビデオカメラ」デバイスは「VMC_Camera」で、解像度を「1920x1080 60fps」とします。
ここまでで、画面上にキャラクターがそのまま映ったはず
- 「キャリブレーション」から「しょうさい」(なんで平仮名…)にチェックを入れて「インポート」を選択。
ファイルは先ほど出力した 「externalcamera.cfg」ファイル - セーブしたら「シンクロとスタート」をしてみましょう。
画面とキャラクターがずれる場合は、 「カメラ」「エディット」から、externalcamera.cfg を再度読み込みましょう。
VirtualMotionCapture に戻って、「キャリブレーション」を行います。
「MR合成モード」のどちらかを選択しましょう。
キャラが浮くようなら下の選択肢を使用します。
そしたら VR ヘッドセットと両手のデバイスを持って、モデルと同じポーズでキャリブレーションします。
この時点で、LIV の映像には自分のキャラクターの映像が表示されているはずです。
5. OBS で撮影する
OBS とはこのソフト。
要するにデスクトップの映像や音を保存してくれるソフトといえばいいですかね(名前の通り配信もできます)。
起動直後はこんな感じ。
設定から音声を開き、VR のヘッドセットを指定します。
保存先も指定しておきましょう
次はウィンドウのキャプチャを作成して
LIV の合成画面を指定します。
で、映像が表示されたら「録画開始」ー「録画終了」で映像を保存できます。
GoodLuck!