第1回「趣味ナレジ」 ~バーチャルにおいでよ湯けむり紀行編~

育良ケイ © ikr_4185 2018 image licensed under CC BY-SA 3.0

みなさん!Vtuber(バーチャルユーチューバー)はご存知ですか?

「バーチャルユーチューバー(Vtuber)」は、ざっくりいうと「トラッキング技術を用いてリアルタイムに動く3Dモデルまたはイラストの、キャラクターを用いた動画配信者」です。

今までのYoutuberと違い、アニメのキャラクターが生きて動いているように見えるのが特徴で、運営者は企業/個人どちらも居ます。

面白い例としては「キャラクター性を重視し、物語の世界の住人と交流しているようなコミュニケーションを展開する」「おじさんが美少女キャラ+ボイスチェンジャーを用いて、完全に美少女になる」「VR空間内で交流会やイベントを開催する」等があります。

なぜ急にこんな話をしたかと言うと、僕も趣味でVtuber(らしき)事をしていて、友達から質問を受けるようになったからです。

Youtubeチャンネル / 育良ケイ © ikr_4185 2018 / CC BY 3.0
image licensed under CC BY-SA 3.0

はい、お察しの通り仕事と全く関係ないです。今回テクナレジで完全趣味の回として、「Vtuberのなりかた」に関して筆を取らせていただきます。

※ タイトルの湯けむり要素はありません。語感でつけました。

1. 目標

Vtuberと一言に言っても、非常に多種多様なVtuberが居ます。

「FaceRig + Live 2D」を用いた2Dイラスト系の方や、人形劇、果ては実写まで居ますが、今回お話するのは僕もしている「Unityを用いた3DモデルタイプのVtuber」です。

この記事での目標は「大雑把な、0からスタートして動画投稿までの流れの把握」です。

僕がやってみようと調べ始めたとき、この大まかな流れを書いた記事が意外と少なく、最初全体像を掴むのに若干苦労しました。なので、今回は「始めてみたいけどなにからどう手を付けたら良いか全然ワカラン」という方向けに、僕が考える最短ルートをご説明します。

この記事の主眼は「流れの把握」なので、細かな技術というよりは主に「調べ方」がメインになります。テックブログとは。

2. 要るもの

僕が使っている物はザックリ下記のとおりです。※最低限です。

ハード系

  • HTC VIVE
  • ソフマップで6年位前に買って、その後 GTX 1050 Ti を積んだゲーミングPC

ソフト系

  • Blender 最新版 (記事執筆時点で 2.79b) : 無料
  • Unity 5.6.3p1 ※バージョンの理由は後述 : 無料
    • Unity Asset: 「Steam VR」 : 無料
    • Unity Asset: 「VRTK - Virtual Reality Toolkit」 : 無料
    • Unity Asset: 「Final IK (VRIK)」 : 有償
  • OBS Studio 21.1.2 : 無料

ここでネックになるのは、間違いなく価格だと思います。HTC VIVEが約7万円、PCで総額15万円、加えてFinal IKが約1万円します。

僕の場合、PCはゲームがしたくて昔からチマチマパーツを買い足していたところへ、Vtuber文化の登場、HTC VIVEの値下げ、Final IKのセールが重なり、結果としてはかなり控えめに済みましたが、それでも正直ぽんと買える額じゃないです…

なので、VRじゃなくてもいい、しかし"バーチャル"がしたい! という方は、まずは「FaceRig + Live2D」の、2Dイラストタイプをおすすめします。こちらであれば、WEBカメラと合せて4,000円もあればモノは揃うと思いますし、問題なく"第四の壁"を突破する事ができます。コンテンツとしての表現方法はVRだけではありません。


※画像はFaceRigデフォルトの3Dモデルですが、Live2Dを導入するとアニメ調2Dモデルが使用できるようになります。

それでもVRで3Dな感じの"バーチャル"をやりたいという方、もう暫くお付き合いください。やらなければはじまらない。

…あ、インストール方法はソフト名でググってください。HTC VIVEのセッティング方法も、購入前に調べておいてくださいね。部屋の模様替えとかも必要かもです。すみません、そういう感じの記事です。

3. モデリング

いきなりですが、実はここすっ飛ばしても出来なくはないです。

例えば、第三者による動画配信等が許可されている3Dモデルが、ドワンゴさんの「ニコニ立体」などで公開されていたりします。

※ 公開されている3Dモデルを使用する場合、ライセンス・利用規約の確認が非常に重要です。悪気がなくても権利侵害をしてしまっている場合が非常に多いため、本当にVRアバターとしての利用が可能なのか、改変が可能なのか、動画配信や商用利用が可能なのか等、よく確認してください。

また最近では、Pixivさんの「VRoid」、IVRさんの「Vカツ」など、モデルの作成が簡単にできるソフトも続々公開され始めているからです。

…しかし、ここは自分の考える最高にカワイイ姿のVtuberを生み出したいのが、人間のサガ(主語最大)だと思います! そうに違いありません。そうですよね! であれば、フルスクラッチです。 一から自分の手でカワイイを生み出しましょう! カワイイは気合です。

まず、ここで登場するのが、3Dモデリングソフトの「Blender」です。非常に高機能かつ世界中で用いられている無償のソフトで、資料等も豊富です。

僕のモデルも Blender で作りました。ニコニ立体で公開/配布してます。初めてのモデリングの割にはそこそこの出来栄えじゃないかと思うので、ぜひ褒めてください。

画像出典: 株式会社ドワンゴ「ニコニ立体」 / ikr_4185 「【配布】ねこ擬人化モデル v1.0.0

ここでネックになるのは、このBlender、最初は操作にかなり慣れが必要です。ほとんどの主要操作でショートカットキーを使用する必要があり、まずそこに慣れる必要があります。このキー配置も独特で、IDEに慣れたSEなどは恐らく発狂すると思います。僕もしました。

加えて、「マテリアル」「テクスチャ」「UV展開」「ウェイトペイント」「ボーン」等々、モデリングそのものに非常に様々な概念が登場するため、最初これらを理解するまでが非常に苦労します。僕も理解しきれていません。正直、ここで心が折れる人も多いと思います。

Blender全然わからんのポーズ
育良ケイ © ikr_4185 2018
image licensed under CC BY-SA 3.0

が! 自分の考える最高にカワイイ3Dモデル、つくりたいですよね! そうですよね! ならば一緒にがんばりましょう。繰り返しますがカワイイは気合です。

幸い、最近ではVtuberの盛り上がりも相まって、Blenderの使い方を解説するページや動画が増えました。個人的におすすめなのは zen さんの「ワニでもわかるゼロからのBlender」シリーズです。特に第0回の冒頭の"何がわからないかわからない"の話が本当に好きです。ぜひ全部見てください。

検索で調べる際は、「Blender 講座」や「Blender 初心者」で調べると、モデリングの流れを順番に説明してるページが見つかります。そこから、その中で登場した「わからない用語」を少しずつ調べて、徐々に「なんとなく知ってる用語」を増やしていくのが良いと思います。とにかく最初はわからない用語だらけなので、完全未知の状態を解消していくのが、最初の心理的障壁を取っ払う近道じゃないかと思っています。

他にも Blender 以外にも、メタセコイア というソフトなどもあります。そちらもいろいろ奥が深いのですが、無限に話ができてしまうのでここでは割愛します。

4. Unityで動かす

次は、作ったモデルを実際に動かす段階です。

この章では、「HTC VIVEで認識した動きをモデルに適用し、その様子をウィンドウキャプチャできるようにする」までを行います。

ここで使うのは Unity です。ゲームエンジンとして有名ですが、ここに先程作成したモデルと各種アセットを組み合わせて環境を作ります。アセットは、大雑把に言えば、様々な機能やデータがひとまとめになった配布パッケージのような物のことです。

最終的にこんなかんじになります
育良ケイ © ikr_4185 2018
image licensed under CC BY-SA 3.0

バージョンですが、先程なぜ 5.6.3p1 と指定したかというと、VR系のVtuberを中心に非常に人気が広がったVRネットワーキングサービス「VRChat」で、使用するモデルをアップロードする際に、このバージョンが指定されているためです(モデルアップロードにUnityが必要です)。

VRChatについては、恐らく「VR系Vtuberをやりたい!」という方であるなら説明するまでもないと思いますが、VR系Vtuberを中心として、VRChat上でのイベント企画や交流が盛んな為、VR環境を持っているなら、いずれ誘われる機会があると思います。というか多分やりたくなりますし、予言しましょう、貴方もそのうち絶対にやります。なので 5.6.3p1 で初めた方が後々楽です。

※ もちろんゲーム開発や本格的にVR技術を習得したいという場合は、最新版にするべきだと私は思います。ただ、この記事を読んでくださっている方は恐らく「まずは趣味でVtuberになりたい」人だと思いますので、イベント企画や交流の可能性などを踏まえたVRChat向けの環境ということで、5.6.3p1 をご紹介します。

ちなみにVRの配信環境としては、株式会社バーチャルキャストさんの「VirtualCast」というソフトがあります。それ以外にも、前述のVRChatが使えるなら、そこからカメラ映像を出力する機能もあったりします。

僕の場合は、一応エンジニアの端くれとして「Unityを使って自分の手で作ってみたい!」という気持ちがあったので撮影環境を手作りしましたが、ぶっちゃけ撮りたいだけなら、既存の物を使ったほうが質的にも作業量的にも圧倒的に良いです。この記事の意味がどんどん迷子になってきました。

…さて、気を取り直して、Unity上ですべき事は幾つか(幾つも)あります。

  • Unity にモデルと各種アセットを入れる
  • モデルに Final IK をアタッチ、動かすための設定を行う
  • 配信を行うためのカメラを、Unity 内に用意する
  • 配信用の舞台をUnity内に作る

お察しかと思いますが、これらひとつひとつで結構な量の作業が必要です。
ここでは、それぞれの調べ方や、他所であまり触れられていない初心者がハマりやすい注意点などをご説明します。

まず、基本的なUnityの使い方に慣れるために、逆説的ですが「ゲームを作る」のが良いです。Unityの公式で、「玉転がし」の作り方のチュートリアルが用意されているため、それを一通りやってみるのをおすすめします。これが終われば、恐らく基本的な使い方はわかるようになると思います。理由としては単純に、これが一番網羅的にUnityの操作全般をなぞれるからです。やってみたらわかると思うのでやってください。

上記が終わったら、実際にモデルを入れて動かすための設定をしていく段階です。私が参考にしたのが、@toRisouPさんの「VRで「結月ゆかり」になって生放送する」という記事です。

恐らく、Vtuberっぽいことをする上でUnityで行う必要があることは、ほぼこの記事に詰まっていると思います。最高なので全部読んでください。ええ、はい、ただのファンです… あと本当はVRM形式のモデルを使いたいんですがまだ出来てません… これはただの独り言です。

また、Unity 5.6.3系を使用する際の注意点として、Steam VRで上手くViveコントローラが表示されないバグがあります。これに僕はかなりの時間ハマっていました。最終的に@miyumiyuさんの「Unity 5.6.3 + SteamVR Plugin 1.2.3 でViveのコントローラが表示されない問題」という記事にたどり着き、これを見てようやく直せました。控えめに言って神だと思っています。

ここから僕は、まずは撮影用の最低限の環境を用意したかった為、「使うモデルは自作のモデル1つ(.fbxファイル)」「カメラは手持ちのハンディカム1台」「背景は真っ白」の環境を作りました。

私の場合、使うモデルでMMDモデルを使用しない点以外、@toRisouPさんの記事とほぼ同様の手順で作業を進めていきました。この時、「設定を調整してみたけど、前の方が良かった…」という場面がしばしばあるため、"イイ感じ"になったところで、Hierarchyにあるオブジェクトを、Prefab化しておくと後で楽になります。やり方はググってください。割とすぐ情報が出ます。

ハンディカムについては、最初は僕も「UnityCam + RenderTexture」でWEBカメラとして出力していたのですが、この動作が重すぎ、配信映像がカクついて見るに堪えなかったため、結局「EXEファイルとしてビルドして、そのウィンドウをキャプチャする」という方法に落ち着きました。ここでは@_karukaru_さんの「UnityでVRコスプレするときに詰まったところの覚え書 その3」内の「やっぱりWebCamTexture重い」の章にあるスクリプトを使って、カメラ映像をウィンドウに表示させるようにしました。

カメラの"ハンディ"要素については必須のものではないですが、面白いのでご紹介しておきます。私がやりたかったのが「ブレア・ウィッチ・プロジェクトみたいなモキュメンタリー風映像」だったため、@nise_aoiさんのVRTK 3.2.1の基本設定から物を掴むまでのまとめ記事を参考にしてカメラを手持ち可能にしました。カメラを入れたオブジェクトを手持ちできるようにして、配信中にカメラ位置を手持ちで動かせるようにしています。

どこからどう見てもハンディカムです。

また、VR空間内を自由に移動できるようにするため、DAIさんの「【HTC VIVE】 VR開発チュートリアル ~ものをつかんで投げ、テレポートできるようにする~」という翻訳記事を参考にして、いわゆる「テレポート移動」をできるようにしました。ただ僕の実装が雑すぎて、今の所「不気味な動きで超長距離を一瞬で駆け回る謎の人型生物」を爆誕させてしまったため、ここは改良していくつもりです。VRchatみたいな動きってどうやって作るんでしょう…

※追記: 最近 VRTK_TouchpadControl を使用する方法を知り解決しました。いずれまたご紹介できればと思います。

そして、配信用の舞台/背景ですが、これは超雑です。真っ白い巨大Planオブジェクトを回転させて、ただ立てただけです。お手軽真っ白空間。ハリボテとも言います。以上。

育良ケイ © ikr_4185 2018
image licensed under CC BY-SA 3.0

あと、これも必須ではないのですが、毎回Unityを立ち上げるのが面倒だったため、作った撮影環境プロジェクトをビルドして、EXEファイルとしておきました。これで起動が本当に一瞬になり「あ、配信しよ」と思ったときに配信をはじめられるようになります。

最後に、多分Unityで開発されている方には当然すぎて誰も触れていないことだと思うのですが、Unityでモデルやアセットを次々入れていくと、プロジェクトのファイルサイズがギガ単位で凄まじいことになります。あっという間にPCのドライブ容量が満杯になるので、少し気にしながらの方がいいです。

5. 撮影する

さあようやく撮影するところまでこぎつけました。

ここで登場するのが OBS studio という無償のソフトです。

育良ケイ © ikr_4185 2018
image licensed under CC BY-SA 3.0

基本的に OBS studio は、動画配信に特化したソフトなのですが、録画の機能もあります。僕はこれを使って動画撮影をしています。OBS studioの使い方に関しては、シンプルに「obs studio 録画」で検索するとたくさん資料が出てきます。

ここでポイントになるのは、今回は「ウィンドウキャプチャ」を使って録画を行うことです。つまり、一般的なYoutuberの配信というよりは、「ゲームの録画」に近いことをします。ここの設定が上手くできれば、そこまで難しいことはありません。

マイクも基本的にはHTC VIVEの物を使えば問題ないと思います。音質等にこだわりが出てきた場合は別途購入した方が良いですが、そうなってくると今度はオーディオインターフェースやらコンデンサマイクやスロートマイクやら、どんどんオーディオ方面の機器が増えていくことになるので、割愛させてください。ぼくもスロートマイク欲しいです。

逆に少し手間取るのは、動画の録画ではなく生配信を行う場合です。ネットワークを気にする必要が出てくるため、例えばニコ生であれば、OBSの支援プラグイン「obs-rtmp-nicolive」を導入するなどの一工夫が必要です。このあたりに関しては、夕雲さんの「OBS Studio ニコニコ生放送 新仕様「新配信」設定解説」を参考にしました。Youtube Live での配信も近い内にやってみたいなぁと思ってます。

6. まとめ

ここまで読んでくださり本当にありがとうございます。ほぼ記事紹介とググり方講座になってますが、逆に僕が欲しかった記事がこれだったので、記事が公開されたら最近バーチャル活動をはじめた友達に見せようと思います。

それから、個人的な願いとして弊社取締役の伴にはいつか美少女になってほしいと思っています。ボイスチェンジャー恋声使って京訛りの美少女になりましょう伴さん。需要ありますって。モデリング僕がやりますよ。

※ もしご紹介した記事作成者の方で、企業運営のメディアでの紹介NGの方がいらっしゃっいましたらご連絡ください。個人Twitter:@ikr_4185