はじめに
昨年度から火種の上がっていたVTuber界隈、本年度に入ってから人気も市民権も加速度的に上がり、それに釣られるように、技術面も大きな進化を遂げた。
今から私が伝えたいことは、
「2018年度後半からVTuberになってゲーム実況を始めるの、超カンタン、超低コストになったんだぜ!」
という話。
そして私が望むことは、
「VTuber始めるのこんなにカンタンになったんで、みんなも気軽にガワつけて配信する有象無象になろうぜ! 楽しいぞ! マジで!」
ということ。こんな面白い技術、一般化したいやん?
なお、この記事はVTuber Tech #2 Advent Calendar 2018の2日目の記事だ。VTuber Tech #1 Advent Calendar 2018と違って予定スッカスカだ。
ご興味があれば、他の方々にも記事を書いていただけると私が嬉しい。
私は誰だ
シス管とWeb屋を往復している。個人依頼も請け負っているが転職活動中だ転職先決まりました。
ところで、この動画を数秒見てくれ。こいつをどう思う。
https://www.youtube.com/watch?v=SKMh3Ec4al8
上記プロフィールとは別に、ネトゲでは巨乳JKを自キャラにするので個人的な技術面での興味と、Vtuberを交えた配信技術についての依頼があり調査が必要だった為、**色黒JKの皮を被った零細VTuberをやっていた。動画内のPCゲームはoverwatch、またコンシューマゲームではSplatoon2をプレイしていた。
今日はこの配信を参考に、
どのハード・ソフトにて実現しているのか?
選定理由は何だったか?
どのように配信しているのか?
などを中心に解説していく。
基本的には、ゲーミングPC(Windows)1台と最近のスマホさえあれば無料で実現できる。なお、プログラムやソースを弄る話は一切出てこないので、Googleでトラブルシュートが出来るスキルがあれば十分だ。
【概要】PCゲーム配信でVTuberやるならベストプラクティスはこれだ。
上記動画は、以下のソフトを中心に実現している。いずれも無料使用の範囲内で使用できるが、気に入ったら何らかの手段で課金できるようになっている。
主要ソフト | 説明・役割 |
---|---|
カスタムキャスト(iOS/Android) | 3Dモデル・スマホカメラを用いたフェイストラッキング |
ApowerMirror(Win, iOS/Android) | iOS/Androidの画面をWiFi/USBを用いてPCに出力 |
OBS Streamlabs ※または OBS |
ウィンドウキャプチャ(ゲーム画面、ApowerMirror)・ クロマキー合成・動画サイトへの配信(rmtp) |
また、サポートとして以下のソフトも使用している。補助ソフトについてはリンク先に導入方法や用途が掲載されており、利用者も多くHowTo記事も多い為、解説は省く。
補助ソフト | 説明・役割 |
---|---|
RmtpRelayer | 複数の動画配信サイトにrmtpを送るローカルサーバ |
MultiCommentViewer (以下MCV) |
複数の動画配信サイトにポストされたコメントを集約 ※同名・同用途のソフトがあるが、安定面からこちらを運用 |
BouyomiChan・棒読みちゃん | MCVで受信したコメントを読み上げる |
HTML5コメントジェネレータ | MCVで受信したコメントをOBS表示用のHTMLに出力 |
ボイスチェンジャー | 別のアドベントカレンダー記事にて解説 |
UDデジタル教科書体 | Windows10標準、ポップで可読性の高い書き文字フォント |
※ 配信用のソフトについて、使い慣れている場合はOBSの代わりにXsplit Broadcasterを使うのも良いだろう。有料版であれば、前述のRmtpRelayerも不要になる。
【選定理由】本構成の利点、もしくは何故カスタムキャストが究極のVTuberソフトであると断言できるのか
VTuberを構成するシステムの核は、3Dモデルを読み込み、トラッキングを行うソフトである。その中で、下記を選定条件として、比較検討をした。
- 最大目的:重量級のPCゲームに3Dモデルを合わせ、動画サイトで配信する。
- **軽い。**PCゲームへの負荷を極力軽減する
- カメラでフェイストラッキングができる。ヘッドセット着用でFPSは遊べない
- トラッキング中の背景を緑一色にできる。配信ソフトでクロマキー合成を行う為
- かんたん。(だいじ)
- かわいい。(すごくだいじ)
この条件を総て満たし、しかも相当に高いレベルで実現できるソフトが誕生した。それこそがカスタムキャストである。
- 軽い・カメラでフェイストラッキング:PCのリソースをほぼ利用しない。他のシステムはPCのGPUリソースを食ってPCゲームの操作性に負担をかけるが、モデルのレンダリングからトラッキングまでをPC外のプロセッサ(=スマホ)でワンストップで行える。すごい!
- その為、スマホの画面をPC内に出力するソフト(=ApowerMirror)が必要になる。3Dアプリを立ち上げるほどの負荷はかからない。
- 背景を緑一色:初期の頃はできず悲しい思いをしたが、アップデートで可能になり、神アプリと化した。
- かんたん:カスタマイズは直感的に可能。開発元はPC用に同じモデル・同じカスタマイズ性を備えたソフトをUnityで制作しており、そのリソースを継承し、UI・操作性をよりブラッシュアップさせている。
エロゲは偉大である - かわいい:
エロゲを讃えよ余談ではあるが、上記PC用ソフトとRift,VIVE,Windows MR等のVRギアを用いる事で身体トラッキングも可能になる。動画制作まで視野に入れるならば、同一のモデルで、身体表現における高い自由度が手に入る。っていうか機能を絞ったPC版が欲しいね。
欠点は「身体表現はプリセットにあるものしかできない」「リップシンクの認識が若干弱い」「男子モデルがない、似せようとすると宝塚に行きたくなる」辺りだが、いずれも実運用には問題ないレベルと判断した。また、いずれVRMモデルをインポートできるようになるそうで、広告展開を視野に入れたビジネスでの運用においても耐えれそうだ。
※ 機会があれば後述したいが、最後まで選定に残った、至高のVTuberシステムも存在する。VRoid Studio + 3tene だ。Photoshopが使えるスキルがあれば簡単にVRMを作成でき、かつ割と低負荷でクロマキー背景のトラッキングができる。てーか今3tene Proもあるのか……12月末までキャンペーンか……
【本題】この構成を用いた配信のやりかた
先に挙げた主要ソフト3本を使い、どのように配信すればいいかと、概略ながら説明する。
なお今回は、Twitchで配信する方法を解説する。Youtubeで配信する方法などについては各自で調べてほしい。
【環境】PCスペックと、必要な機器
ASUS ROG STRIX GL703VM にて運用している。
CPU: インテル Core i7-7700HQ (4コア8スレッド/2.8GHz(最大3.8GHz))
グラフィックス:NVIDIA GeForce GTX 1060 (ビデオメモリ 3GB)
メモリ: 16GB (DDR4-2400)/ストレージ: SSD 256GB+HDD 1TB
前述のPCゲームoverwatchは3Dゲームの中でも軽い部類に属するが、これでリフレッシュレート60Hzキープ、90Hzは少し危ういところだ。機器や予算が潤沢にある環境ならば、「ゲーム用PC→HDMIキャプチャ→配信用PC」というPC2台構成も検討にいれるべきだろう。
また、別途に以下の機器を使用している。
- スマートフォン:HUAWEI honor 9 (Cortex-A73 2.4GHz ×4 + Cortex-A53 1.8GHz ×4 / RAM4GB)
- ヘッドフォンとマイク:ゲーミングヘッドセットが楽だが、録音環境にこだわってマイク沼に沈むのも悪くない選択だ。
- スマホ用フレキシブルアーム ※ なぜ必要なのかは後述
【下準備】前もってやるべきこと
1. ソフトをインストールする
カスタムキャスト(iOS/Android)
ApowerMirror(Windows, iOS/Android)
OBS Streamlabs
カスタムキャスト、ApowerMirrorのスマホ側クライアントは、App Store, google Playからインストールすること。なおApowerMirrorはWindows側のクライアントも必要なので、忘れずにインストールすること。
2. ソフトの使い方をある程度理解する&動画配信サイト側での準備をする
「カスタムキャスト」使い方を徹底解説!スマホで簡単VTuberモデル作成・配信 - Mogura VR
[簡単]ApowerMirrorで高画質ミラーリング!スマホの動画をパソコンで観よう![iOS・Android対応]
【Twitch配信】Twitch、Streamlabs OBSの使い方と設定方法^q^【ゲーム実況】 - hirolog123のwot備忘録
上記を参考に、ある程度使い方を覚えておこう。
ここからは上記記事の補足。
カスタムキャストについて
とりあえずキャラを作成してみよう。何から手をつけていいか迷うならば、性癖好きなアニメのキャラを再現してみることをオススメする。
本用途においてnicocasやMirrativは使用しない。これらはスマホから直接ストリーミングをするアプリの為、インストールしないでもよい。
「配信」を押してカメラでフェイストラッキングできるようにするまでで良い。大事なのは、スマホの画面の前で首をかしげると、画面の向こうにいる3Dモデルも真似をしてくれる状況まで持っていくことだ。
ApowerMirrorについて
PCとの接続方法は、USBケーブル(Androidのみ)、WiFi(Android/iOS)が選べる。どちらでも運用可能。USBケーブルの方が画質にも帯域にも優しいが、Androidの開発者オプションからUSBデバッグの有効化が必要な点が悩みどころ。
Streamlabs OBSについて
そのURL先めちゃくちゃ分量多いけど、Twitchの登録から配信キーの有効化まで余すところなく解説されてる良記事だからぜひ読んで。
【配信開始】配信する際にやるべきこと
実際に配信する際は、このような手順を踏んでいる。
1. APowerMirrorで、PCにスマホの画面を出力する
スマホ側、Windows側でAPowerMirrorを立ち上げ、WiFi接続 or USB接続で、ミラーリングまで完了させておく。
2. カスタムキャストで、フェイストラッキングする
ここからはカスタムキャストの画面を交えて説明する。
画面下、配信を押す。
リップシンクは映像認識を選択している。精度は部屋の照度に影響するので、なるべく明るい環境が良いだろう。
デフォルトの設定では、画面の上半分をフリックすることにより、様々なエモートが使えるようになる。私はこのようなセッティングをした。媚び媚びでぶりっこなポーズを入れて遊んでいたときに、思わず「両親よ、こんな息子を赦してくれ」と口から漏れたことがあるのだが、あれは何だったのだろうか。
上記が終わると、フェイストラッキングが始まる。正面を向き、喋ったり、首をかしげるなどして、挙動を確かめよう。なお、右上に薄い歯車マークがあり、そこで様々な設定が可能になる。下記の画像は「カメラ設定」。ジャイロカメラは画像の通りを推奨するが、色々と試してほしい。
Tips: スマホがスリープ状態にならないようにする
スリープ状態になり、画面が消えると、当然画面出力も途切れる。スマホの設定から設定する方法もあるが、私は戻し忘れるケースが多いので、私はAndroidアプリの「つけっぱ!」を使用している。起動するだけで(電源ボタンを押さない限りは)スリープにならない。
3. PCモニターの横に、スマホを配置する
カスタムキャストはフェイストラッキングの為、顔がスマホカメラの正面にある状況にのみ反応し、それ以外は画面がフリーズしてしまう。しかしながら、ゲームプレイ中は当然、視線の先がモニターに向かっているはずである。
そのため、スマホをモニターの隣に配置する必要がある。
そこで役に立つのが、先程紹介した スマホ用フレキシブルアーム だ。クランプ式でアームがほどよく長く、3Dモデルの表示調整を配信中に行う際も、ボールジョイントの調整で手早く対応できる。
実際にフェイストラッキングが動作できるセッティング事例を用意した。下記を参考に、モニターを見ながらでもフェイストラッキングが可能になるポジションを探してみてほしい。
4. OBS Studioで、2.のウィンドウをクロマキー合成する
ここからはStreamLabs OBSの画面を交えて説明する。
ソースの追加から、「ウィンドウのキャプチャー(ウィンドウキャプチャ)」を選択する。
Windowの項目から、「ApowerMirror Main」を選択し、ウィンドウ下にある緑のボタン「完成」をクリック。SS撮影時にえっちな小説が出てきて取り直した
すると、プレビュー画面にスマホの画面が出力される。ドラッグやウィンドウの拡大縮小を適宜行い、スマホの画面を右クリックしてフィルターを開く。
クロマキーの設定画面がでてくる。画像を参考に設定し、「完成」をクリック。操作中もプレビュー画面にクロマキーの状況がリアルタイムで反映されるので、動かしながら確認しよう。
Tips: 着信通知が表示されないようにする
通話やメールなどを併用しているスマホでこれを実施する際、突如として通知が表示されてしまう場合がある。私は前職場からインシデント案件が掛かってきそうになって配信を止めた苦い思い出がある。しょうもない理由で個人情報の流出を防ぐため、「スマホ側で通知を非表示にする」か、「配信ソフト側で通知を見せないようにする」の、いずれかを実施する必要がある。
「スマホ側で通知を非表示にする」では「おやすみモード・通知の鳴動制限」などを設定しておくこと。最悪SIMを抜いておく。
「配信ソフト側で通知を見せないようにする」では先程のクロマキー合成までの手順を参考に、フィルタで「クロップ/パッド」を追加する。画像ではTOP:120を指定し、上部をバッサリ切っているが、端末による。
5. ゲームを起動し、配信を楽しむ!
基本的に、配信時のゲームは「フルスクリーン」で表示させるようにすること。理由は、フルスクリーン以外はゲームのパフォーマンスに悪影響を及ぼすことと、配信ソフトでの設定が楽になるからである。
まず、ゲームをフルスクリーンで起動し、キーボードの「Alt + Tab」などで再びOBSのウィンドウに戻る。ソースの追加から、「ゲームのキャプチャー」を選択し、「Capture any fullscreen application」を選択し、一度再びゲームに戻る。さらにもう一度OBSのウィンドウに戻り、プレビュー画面でゲーム画面が反映されているか確認しよう。
Tips: PCゲームではなく、コンシューマゲームで配信する
コンシューマ機のキャプチャをする場合は、HDMIキャプチャが別途必要となる。
ソースの追加を行う際、前述の「ゲームのキャプチャー」ではなく、「ビデオキャプチャーデバイス」を選択し、使用しているキャプチャを選択すること。私はmonsterX U3.0R を利用していた。
ただしコンシューマゲームでは法務面での注意が必要になる。ゲームによっては全ての配信を禁止しているものもある。グレーな要素を残したくない環境であれば、ゲームタイトルは慎重に選ぶ必要がある。
実は私自身が不勉強であり、Splatoon2配信をしてからその辺りの危うさに気づき、少し苦い思いをした経験がある。
しかし先日、任天堂より、プレスリリースが発表された。日本のゲーム業界から、法的文書と共にこの発言が出ることが、本当にありがたい。
ネットワークサービスにおける任天堂の著作物の利用に関するガイドライン
参考資料:任天堂IPの配信が非営利の個人に開放された。ではプロの配信者はどうするのか?
さいごに
「カンタン」だとは言ったが、あくまで私個人の視点であり、人によっては難しく感じるかも知れない。単に私の筆力が足りないかも知れない。それでも、自分の動きにシンクした美少女が動画に反映されるのは、非常に面白い。
話は色々と端折ったところもあるが、大体の手順フローは網羅しているものと考えている。とにかく、カスタムキャストを開発されたS-court様を始め、素晴らしいVRソフトを開発されている方々には頭が下がる思いだ。この記事が、シェアが増えた一抹のきっかけになってくれればと切に願う。
なにか不明な点があれば、下記コメント、私のTwitter へのリプライ/DMなどでどうぞ。