2018〜2020年にFaceRigの録画からLive2D用の動きを取り出した記録です。FaceRigは新規販売を終了しています。Moliで専用動画から取り出す方法と、Pythonで.rplを解析する方法は別です。元の録画・モデルをバックアップし、コピーで試してください。全パラメーターや物理演算の完全移行を保証するものではありません。

GUIで変換!「Moli」の使い方
Moliは、MoliModelで書き出した専用動画から動きの情報を取り出す方法です。.rplを直接Moliへ読み込む手順ではありません。以下は2020年の操作記録です。
作成者はときなしさん(@KalsaKey)です。
まずはFaceRigで動かしたいアバターの動きをキャプチャします。
上部メニューの「パフォーマンスの録音」を選択します。

録音後に「〇〇.rpl」という拡張子のデータが保存されます。
当時は下記のSteam WorkshopからMoliModelを登録しました。Live2D Module DLCが必要と記載されています。現在の公開ページには削除・非互換の警告も表示されており、新たに取得できるかは確認できていません。取得できない場合は、この手順の前提を満たせません。
https://steamcommunity.com/sharedfiles/filedetails/?id=1826949337

FaceRigのAvatar一覧を確認し、「MoliModel」が追加されていることを確認します。

「MoliModel」を選択し、「ムービーとしてパフォーマンスをエクスポート」を実行します。

これでパラメーターをキーフレームに変換するための動画が出力されます。
出力した動画から「Moli」を使ってキー情報を出力します。
Moliは下の作者のFANBOXで案内されています。取得できるファイルと利用条件を配布元で確認してください。
当時使用したのはMoli ver2.00です。現在の配布ページのタイトルはver2.02(2021年12月13日更新)ですが、今回の確認では配布本文・実行ファイルの動作まで確認していません。
・ダウンロードしたフォルダ内の「Moli.exe」を起動します。
・録画した動画をドラッグ&ドロップします。

・モザイク部分をドラッグして赤枠で囲みます。
・最後に「モーション出力」ボタンをクリックします。

「○○.motion3.json」というモーションデータが書き出されます。
最後にLive2D Cubism Animatorを起動し、モデルを表示させます。
右クリックメニューから「モーションを読み込み」を選び、書き出した「○○.motion3.json」を読み込みます。


GUIで変換!「Moli」の使い方まとめ
当時は変換後のキーを調整できました。読み込み後は目線、口、表情、長さを元の動きと比べます。専用モデル・ツールを取得できることと、出力が対象モデルに合うことが前提です。
ちなみにプログラムが扱える人は下記の方法もおすすめです。
コマンドで変換! FaceRigRplToLive2DMotio3Jsonの使い方まとめ
ガネーシャさん(@Ganeesya)の作成されたFaceRigRplToLive2DMotio3JsonでFaceRigのモーションデータをLive2Dへ持っていってみました! そのやり方の紹介です。
話題のFaceRigRplToLive2DMotio3Json(@Ganeesya)を試してみました。
— 睡井眠子@CGメソッド (@cg_method) 2018年9月12日
おおよそのアニメーション情報が取得されている感じです!
(目線が反れぎみだったのでViewerで少しオフセット)#睡井眠子 #facerig #Live2D #VTuber pic.twitter.com/OMz0w99HIR
※FaceRigを使うのでWindows想定です。
FaceRigのモーションデータを用意
- 同じFaceRig環境で長さの異なる.rplを複数保存します。5個は当時の用意例で、成功保証の最低件数ではありません。同じファイルを複製するだけでは解析に必要なサイズ差ができません。

Pythonのインストール
- まずPythonのインストールをします。下記のURLからダウンロード
https://www.python.org/downloads/
- インストールはカスタム(Customize installation)を選択します

- 以下ではPython実行ファイルの場所をC:\Python\python.exeとする例を示します。実際のインストール先に読み替えてください。特定のフォルダへのインストールは必須ではありません。

FaceRigRplToLive2DMotio3Jsonのダウンロードと設定
- 下記のURLからデータをダウンロード
https://github.com/Ganeesya/FaceRigRplToLive2DMotio3Json
- FaceRigRPL.pyを適当なエディタで開きます
- folderPath = “Set Your rpl files folder path.”と書かれている記述を探して下記の様に先のrplの格納されているフォルダのパスを入力します
folderPath = "C:/Users/ユーザー名/Desktop/test"
このPython文字列では区切りにスラッシュを使っています。ユーザー名を置き換え、実在するコピー先フォルダを指定してください。

plotlyエラーがでる場合
ModuleNotFoundError: No module named 'plotly'
とかエラーが出る場合は
#import plotly.offline as po
#import plotly.graph_objs as go
取得したソースではグラフ作成の呼び出しがコメントアウトされています。グラフを使わない場合に限り、上記2つのimportを無効化する方法があります。別の例外まで無視せず、エラー箇所を確認してください。
TypeError・ZeroDivisionErrorで止まる場合
作者の解析コードでは、見つかった録画のファイルサイズ差からフレームサイズを計算します(2026年10月29日確認)。
reduce()の箇所でTypeErrorになったら、指定フォルダ直下に読み込める.rplが2個以上あるか確認してください。
剰余計算の箇所でZeroDivisionErrorになったら、録画ファイルのサイズがすべて同じでないか確認します。
これらはコード上の計算条件であり、サイズが異なる2個を用意すれば正しく変換できるという保証ではありません。
別の箇所のエラーや、条件を満たしても続くエラーは、表示された行番号と入力形式を記録して切り分けます。
スクリプトの実行
- Windowsの検索から「cmd」とうち、コマンドプロンプトを起動します。
- コマンドプロンプトでPythonの場所を確認
"C:\Python\python.exe" --versionで確認します。パスは実際の環境に合わせてください。
- FaceRigRPL.pyを実行
コマンドプロンプトで、Python実行ファイルとスクリプトのパスをそれぞれ引用符で囲んで指定します。以下は配置例です。Pythonの別名が認識されなくても、実際のpython.exeの場所を指定できます。
"C:\Python\python.exe" "C:\Users\ユーザー名\Desktop\FaceRigRplToLive2DMotio3Json-master\FaceRigRPL\FaceRigRPL.py"

- 変換後のデータを確認します

Live2D Viewerで確認
対応するViewerでモデル設定とテクスチャを含む一式を読み込み、対象モデルのIDに合う.motion3.jsonを読み込みます。旧mocと新しいmoc3では対応するViewerや形式が異なります。
話題のFaceRigRplToLive2DMotio3Json(@Ganeesya)を試してみました。
— 睡井眠子@CGメソッド (@cg_method) 2018年9月12日
おおよそのアニメーション情報が取得されている感じです!
(目線が反れぎみだったのでViewerで少しオフセット)#睡井眠子 #facerig #Live2D #VTuber pic.twitter.com/OMz0w99HIR
Live2D Animatorでアニメーションをインポート
- Live2Dを立ち上げAnimatorに切り替えて、モデルをいれます。
- タイムラインのモデル名を右クリックしてモーションを読み込みを選択します

01.rplID2.motion3.jsonまたは01.rplID3.motion3.jsonを選びます。
取得したソースのFps欄は10.0固定です。元録画・変換後・タイムラインの長さとフレームレートを照合し、読み込み後の動きも確認してください。


mtnに変換する方法
以下は当時のCubismで2.1形式へ書き出した記録です。現行版に同じ機能があるとする案内ではありません。 ファイル>組込み用ファイル書き出し>モーションファイルの書き出しから 2.1形式(mtn)として書き出しを選択すればmtnに変換して出力できます。

備考
バイナリを解析することはデザイナーにとっては難しいので、このツールは非常に助かります! これでFaceRigのアニメーションを手作業で修正できるので、よりクオリティの高い表現ができる可能性があります。
ソースではファイルサイズ差の最大公約数からフレームの大きさを推定しています。内容の不要部分を単純に削除する仕組みではありません。出力は固定の対応表を使うため、録画形式や独自パラメーターへの適合は別途確認が必要です。
FaceRigアニメーションをLive2Dへ移行した動画
上記の技術を生かした動画を作成してみました。
体の動きだけFaceRigでつけて、アニメーション情報をLive2Dアニメーターで移行して目パチと口パクを付けています。
FaceRigアニメーションをLive2Dへ移行した動画2
追記(2019/5/3)です、PV作成してみました。
ちなみに髪などの物理演算のアニメーションは アニメーション>トラック>物理演算をアニメーションベイクでキーが生成されます。
作成するべきFaceRig用Live2Dのパラメーターをまとめました!

モデルのクオリティアップする方法を書きました!

Live2Dでのモデル制作は、ほかにも書いています。




よくある質問:FaceRigの.rplをLive2Dへ移行する方法
FaceRigで作ったアニメーション(.rpl)を、Live2Dで使えますか?
この記事は2018〜2020年の変換記録です。Moliは専用動画、Pythonツールは.rplを解析します。現在のツール入手性や互換性、全動作の移行を保証するものではありません。
GUIで変換する方法(Moli)は、どんな手順ですか?
FaceRigで作成したアニメーション(rpl)データをキー情報に変換するツール「Moli」を使う方法で、作成者はときなしさんです。FaceRigで上部メニューの「パフォーマンスの録音」で動きを保存し(〇〇.rplが保存されます)、Steamから「MoliModel」をサブスクライブして、FaceRigのAvatar一覧で選択し「ムービーとしてパフォーマンスをエクスポート」で動画を出力します。FANBOXから「Moli」(記事ではver2.00)をダウンロードし、Moli.exeを起動して、録画した動画をドラッグ&ドロップし、モザイク部分をドラッグして赤枠で囲み、「モーション出力」ボタンをクリックすると、「○○.motion3.json」が書き出されます。
コマンドで変換する方法は、どんな手順ですか?
コピーした複数の.rplを用意し、FaceRigRPL.pyのfolderPathを実際のフォルダに合わせます。コマンドプロンプトからPython実行ファイルとスクリプトを指定して実行し、出力とモデルの再生結果を照合します。古い解析コードのため、現行環境での実行確認はしていません。
複数の.rplを用意するのは、なぜですか?
ファイルサイズ差からフレームサイズを推定するためです。異なる長さの録画を使いますが、数を増やすだけで正しい変換になるとは限りません。
エラーが出たときは?
Pythonが見つからない場合は実行ファイルの実際の場所を確認します。plotlyのimportを省く方法はグラフ作成を使わない場合に限ります。その他の例外は無視せず、入力フォルダ・形式・出力を確認してください。
変換したデータは、どう確認しますか?
モデルのIDに合うID2またはID3のモーションを対応するViewerへ読み込みます。再生できるだけでなく、目線・口・表情・長さを元録画と照合してください。
Live2D Animatorでは、どう取り込みますか? 物理演算の動きは?
Live2Dを立ち上げてAnimatorに切り替えてモデルを入れ、タイムラインのモデル名を右クリックしてモーションをインポートします。記事の追記では、髪などの物理演算のアニメーションは、アニメーション>トラック>物理演算をアニメーションベイクでキーが生成される、としています。記事は2018〜2020年の内容で、MoliやFaceRigRplToLive2DMotio3Jsonなどの外部ツールの提供状況は変わっている可能性があるので、最新は各配布元で確認してください。
