↓の記事の応用編として、mocopiで動かしてるキャラクターをOBSに映して遊んでみましたのでそのメモ書きをします。
概要
動画を撮るために使用したツールの流れを書いてみました。
遊びごごろで自分の声をRVCでずんだもんの声に変換してずんだもんになりきってみました。
Voicemeeterを挟んでいる理由はずんだもんの声を、キャラクターの口パク用にUnityへ持っていくために使用しました。
Unityではmocopiでキャプチャしているボディモーションをずんだもんに流し込み、Voicemeeterから持ってきたずんだもんの声でリップシンク(口パク)をさせて、GameViewの画面をOBSへ送っています。
RVC
上記の記事を参考にしてずんだもんの学習データをローカルで作成し、VC Clientでボイチェンするところまでできました。
Voicemeeter
VC Clientで変換したずんだもんの声を、マイク入力として使いたかったので使用しました。
PotatoとかBananaとか種類があるのですが個人的にはBananaおすすめです。
VC ClientのOutputを”VoiceMeeter Input”に設定すると、
↓の画像の”Voicemeeter VAIO”のところにずんだもんの声が入ります。
Discord、Unity等でマイク入力として”VoiceMeeter Output”を使用することで、ずんだもんの声を持っていくことができる。
Unity
mocopi
ずんだもんのモデルの動かし方は上記の記事を参考にしてください。
リップシンク(口パク)
凹さんが作成したuLipSyncを使用してリップシンクをしました。
今回使用しているずんだもんモデルのブレンドシェイプに「あいうえお」があったので、uLipSyncのuLipSyncBlendShape.csを使うことでリップシンクができました。
VoiceMeeterのところでも説明しましたが、Unityには”VoiceMeeter Output”を使用することで、ずんだもんの声を持っていくことができる。
揺れもの
ずんだもんの耳?と髪の毛は”MagicaCloth”を使って揺らしています。
DynamicBoneでも良かったのですがパラメーターの設定が面倒くさかったので、プリセットのあるMagicaClothを使用しました。
UnityCapture
Unityのカメラの画をOBSに映像キャプチャデバイスとして持っていくことができるプラグイン
インストール方法とOBSでUnityの画面を持っていく方法は下記の記事を参考にしました。
反省点
音の遅延が1秒あった
声を発してからずんだもんの声でスピーカーから聞こえてくるのに遅延があり、だいたい1秒ぐらいの遅れがありました。
改善案が今のところ思いつかないので、VC Clientのアプデで遅延が収まるのを待ってます。
声が聞き取りづらい
なんかフニャフニャしてるというか舌足らずというか聞き取りにくかったなぁと。
改善案として、さらに学習させて精度を上げるか、動画収録なら字幕を付けて補完してあげるとかでいけそうな気がします。
ずんだもんでゲーム画面が見えづらかった
ホントゲーム画面見えなかった・・・
合成したOBS画面ではなく、Switchのみの画面?ウィンドウ?を用意すればいけそう。
クロマキーでずんだもんの一部が抜けてた
マゼンダ色をクロマキーで抜く設定にしていたら、ずんだもんの衣装でピンクを使用している箇所があり抜けてしまっていた。
グリーンバックは髪の毛が抜けてしまうので、青ならいけそう。