VTuberじゃないけどデスクトップの光をアバターに投影するVtubeReflect試した

Blog
BlogTech & Work

モチベーション

ゲームや映像を光源としてアバターに投影するVtubeReflectを試してみたい

前提条件

  • FaceID機能(TrueDepthセンサー)が搭載されているiPad、もしくはiPhoneがある
  • iPad(もしくはiPhone)とPCが同じネットワークに接続されている
  • OBSでデスクトップやゲーム画面をソースとして選択と言われてなんとなくわかる
  • Vに抵抗がない

動作環境

今回VtubeReflectを試した環境、普段から使ってるメインマシン

  • Win10 Pro 64bit
  • i7-11700K
  • 64GBRAM
  • RTX3080
  • モニター1: 3440×1440(DisplayPort)
  • モニター2: 2560×1440(DisplayPort)

必要な物たち

ファイル

  • VRM形式の3Dアバター

ハードウェア

  • PC
  • FaceID機能(TrueDepthセンサー)が搭載されているiPad、もしくはiPhone

ソフトウェア

PC

  • waidayo
    • iPad(iPhone)版のwaidayoと接続して動作確認に使用
    • 使いたいアバターがある場合はOredayoを使うほうが多分楽
  • waidayo向け無線アバター転送ツール(SEDSS_Client)
    • アバターをiPad(iPhone)版のwaidayoに転送する
    • PCとiPadが同じネットワークにつながっていると転送先を自動で設定してくれるので便利
    • Oredayoでうまく転送できないときはPC版waidayo + SEDSS_Clientがおすすめ
  • Oredayo
    • アバターの転送もモーションの受信もできる
    • iPad(iPhone)版のwaidayoからのモーションデータを受信する非公式クライアント
    • PC版waidayo + SEDSS_Client の組み合わせで使うか Oredayoひとつで済ませるかはお好みで
  • VseeFace
    • iPad(iPhone)版のwaidayoからのモーションデータを受信
    • VtubeReflectにデータを送信
  • VtubeReflect
    • ディスプレイをキャプチャしてアバターに光源として投影する
    • カメラ位置、カメラ視野角(FOV)、光源の明るさ、ブルーム、反映させるモーションなどが設定できる
    • カメラの操作にちょっと癖がある
  • UnityCapture
    • VtubeReflectに同梱
    • OBSでVtubeReflectの映像をキャプチャ(ソースとして選択)するために必須
    • インストール時に管理者権限で実行しないとハマるので注意
  • OBS
    • VtubeReflectを使った映像とデスクトップ映像を重ねて配信・録画するのに使用

iPad(iPhone)

  • waidayo
    • フェイストラッキング用アプリ
    • 無料なのに有能
    • iPadで使用する場合は縦画面じゃないと設定メニューが表示されない

大まかな流れ

  1. iPadに「waidayo」をインストール
  2. PCに「waidayo」「Oredayo」をインストールしてアバターを設定
  3. iPadの「waidayo」とPCの「VseeFace」を接続
  4. 「UnityCapture」をインストールして「VtubeReflect」を起動
  5. OBSでUnity Cameraを取得して配信画面を設定

セットアップ手順

VRM形式の3Dアバターを準備

VRoid Hub

BOOTH

iPadにwaidayoをインストール

‎waidayo
‎waidayoは、あなたの表情を認識してアバターに再現してもらうことができるアプリです。 VMC Protocolに対応しており、waidayo for PCをはじめとした、対応ソフトウェアへフェイシャルモーションキャプチャーのデータを送信することができます。 表情を認識するためにはA12 Bionic以降を搭載し...

PCに「waidayo」「Oredayo」をインストール

PC版waidayo

Oredayo

Oredayoを起動してVRM(3Dアバター)ファイルを読み込み & 送信

任意のVRMファイルを読み込んでライセンスに同意して「waidayoに送る」を実行

Oredayo側の設定がよくわからず、Oredayoを再起動しても送信できない場合は「SEDSS_Client」でアバター送信する

接続設定を自動でしてくれるので便利

waidayo向け無線アバター転送ツール(SEDSS_Client)

iPad版waidayoを起動してOredayoと接続

PCとiPadに同じアバターが表示されていて、眼などが破綻していなければ転送完了

Oredayoは使わないので終了

VSeeFaceをインストールしてアバターを読み込み

VSeeFace

インストールが完了したらVSeeFaceを起動

iPad版waidayoと同じアバターを登録して選択

iPad版waidayoと接続

ウェブカメラを[ネットワークトラッキング]に変更

マイクは変更しないか普段使用しているものを選択

スタートを押して画面右上の「設定」>「一般設定」

  • 「OSC/VMCプロトコルで送信する」にチェック
    • VtubeReflectにデータを送信するのに必要
  • 「OSC/VMCプロトコルで受信する」にチェック
    • iPad版waidayoからデータを受信するのに必要

iPad版waidayoの設定画面に表示されているポート番号と同じものが設定されているか確認

VtubeReflectをダウンロード& UnityCaptureをインストール

VtubeReflect

Download Nowを押すと支払い画面のような窓が開くが金額入力フォームの上の「No thanks, just take me to the downloads」からDLできる

zipを解凍してUnityCapture Installerを開く

Install.batを管理者権限で実行する

ここで正しくインストールできていないとこの後のOBSのソース選択部分で進めなくなる

VtubeReflectを起動

Load AvaterからiPad版waidayo、VSeeFaceと同じアバターを選択

Monitor, Ambient, Bloomをお好みに合わせて調整

PBRマテリアルがあるアバターを使っている場合は右側のRender Reflectionsにチェックをつけるとマテリアルに映像が反射するみたい

OBSでVtubeReflectが処理した映像ソースを読み込む

OBS

OBSをインストールしたら起動してソースの追加

VtubeReflect内にあるREAD ME.txtを参照

1. Add a Video Capture Device
2. Set the device to Unity Video Capture
3. Set the Resolution/FPS Type to Custom
4. Set the Resolution to 1920x1080
5. Set the Video Format ARGB
6. Other settings should be left as default

日本語訳

1. ビデオキャプチャデバイスを追加します
2. デバイスをUnityビデオキャプチャに設定します
3. 解像度/ FPSタイプをカスタムに設定します
4. 解像度を1920x1080に設定します
5. ビデオフォーマットARGBを設定します
6. その他の設定はデフォルトのままにしておく必要があります

細かい調整とか小技とか

アバター位置の調整

位置の調整をOBSのレイヤー機能から行うと画面の反射がずれる(気のせいかも)のでVtubeReflectのプレビュー画面を見ながら調整する

  • プレビュー画面を右クリックしながらドラッグ
    • カメラの視点変更(上下左右)
    • 移動じゃなくあくまで向きが変わるだけ、FPSで言うマウスか右スティックの視点操作と一緒
  • プレビューを右クリックしながらWASD
    • カメラの座標移動(前後左右)

カメラを上下に移動させたい時は右クリックしながらドラッグで真上か真下に向いてW,Sで移動させる

Sync Root PositionがApplyを押しても反映されない

Sync Root PositionのチェックをON/OFFした後にACES Tonemappingのチェックをつけ外しすると動くようになる

VtubeReflectを試した感想

  • PBRマテリアルを使ったアバターで画面の反射を試してみたい
  • というか自分でアバターを作ってみたい
  • そこそこのPCスペックなのに配信してると重かったから2PC配信できる環境を必要ないけど作りたい
  • メガネはバーチャルと名のつく物ほとんどの敵だという事を再認識した

コメント

タイトルとURLをコピーしました