04. エディターの使い方(アニメーター)



    Q. 60fpsのゲームで、30fpsのモーションデータ(.mtn)、リップシンクデータを動かすと問題がありますか?
    A. 全く問題ありません。通常は60fpsのゲームでも30fpsでのモーション定義を推奨しております。

ゲームのフレームレートと、モーション等で使用されているフレームレートが異なっている場合も
モーション設定時に意図したタイミングで動くように適宜調整されますので問題ありません。

30fpsで定義したモーション等を60fpsで動かした場合には、足りないフレーム分は前後の値から補間計算されるため
30fpsでも60fps相当の滑らかな表現が期待できます。補間は、60fps:31fpsのように割り切れない無い場合でも適切に補間計算されます。

Live2Dの表現では通常アクションゲームのような激しい動きは行わないため、30fpsでも十分な表現力を持ちます。
またデータ容量の削減の目的もあり30fpsでモーションを作成することを推奨しております。
60fpsでモーションを作成することも全く問題はありません。



    A1. .mtnに不要なデータが書き出されている可能性があります

.mtn はテキストエディタで開くことができる文字列データです。

 例) PARAM_ANGLE_X=0,0,0,0.1,0.2,0.3,0.4,.....

メモ帳等で開いて頂き、動かすつもりの無いパラメータのIDが混ざっていないか、
データの最後に想定外の数字が続いていないか等ご確認頂き、Animatorでの出力設定を調整して下さい。

予定外のデータが続いている場合は、「ワークエリアを出力」という設定になっていない可能性があります。

    A2. フェードイン・フェードアウトが影響している可能性があります。

.mtn ファイルは前後のモーション(.mtn)と滑らかに繋がるように動きのフェードイン、フェードアウトが適用されます。
あるモーションM1が動いている時に、新しいモーション M2 を割り込んでスタートした場合は、M1がフェードアウトし、M2がフェードインします。

.mtn を実際にロードするクラス Live2DMotion (親クラスAMotion) の setFadeIn( ミリ秒 ) , setFadeOut( ミリ秒 ) にて、
フェードイン・アウトの長さを指定できます。長さはミリ秒となり、デフォルトでは1000ミリ秒(=1秒)です。

ただし、指定されたミリ秒は計算の都合により実際に指定の通りの長さになる訳ではないので、実機で調整しながら設定する必要があります。


目安としては
 0ミリ秒  前後のモーションを瞬時に切替(滑らかではない)
 500ミリ秒  高速に切り替え。腕の動き等の切り替えには少し早すぎる感あり
 1000ミリ秒  デフォルト
 4000ミリ秒  ゆっくり滑らかに切り替え。動きによっては不自然に遅くなる場合もあり


腕の切り替えが発生するモーションでは、フェード中の表示が完全ではないため(2本の腕がオーバーラップして見える、背景まで透ける、間接が2重に見える等)
500ミリ秒~1000ミリ秒程度のある程度高速に切り替えることを推奨します。

FileManagerクラスのopen_resourceメソッドを使ってassetフォルダの中のデータを読み込んでいるのですが、
サーバーからデータをダウンロードして内部に保存したデータを読み込んで使うにはどんな方法がございますでしょうか?
また、読み込み可能な場合はSQLiteの使用は可能なのでしょうか?

    A. ダウンロードしたデータは、バイナリデータとして読み込んで下さい。

mocデータを外部からダウンロードしてきて内部に保存しそのデータを読み込むことは可能です。バイナリデータとして読み込んで下さい。
もし、assetsの中にダウンロードしてきたデータを入れたいというご質問でしたら、当方には分かりかねます。
また、SQLiteでの読み込みもバイナリデータの読み込みが行えるのでしたら可能なはずです。
こちらに関しては、調査などは行なっておりませんのでご了承ください。




    A. Wavファイルが、再生できない形式で圧縮されている可能性があります。

お手数ですが、音声の変換ソフトなどを使って、WAVのリニアPCM形式または、フォーマット自体をMP3(拡張子.mp3)に変えてご利用下さい。




    A. パーツ表示・非表示の設定を確認して下さい。

一度アニメーターに読み込まれているモデル素材は、データの差し替えをしても「Live2Dパーツ表示」にある
パーツ表示・非表示の値(0 or 1)が変わりません。
差し替え前に非表示(0)になっているパーツは、モデルデータを差し替えても非表示(0)のままです。

パーツ表示・非表示の値を確認して値が「0」になっていれば手動で「1」に変更して下さい。
もしくは、新しいモデルを別素材として読み込んで下さい。




    A. QuickTimeの場合は、以下の内容が原因になります。
Cubism Animator で動画を書き出すときに設定で
「背景を透明化」にチェックを入れて、ビデオ設定の圧縮の種類を「アニメーション」にすると
背景が透明化された動画を書き出す事ができます。

書き出した動画を QuickTime で見ると下図のように輪郭にゴミが付いているかのように表示されることがあります。



これは、 QuickTime の表示の問題なので、動画のデータが壊れているわけではありません。

After Effects などの動画編集のスクリーンで見ると、下図のように正常に表示されます。




    Q. QuickTime動画の書き出しでエラーが出ます
    A. 圧縮形式を変えてお試し下さい。

選択している圧縮の形式によってメモリの使用量の都合などによりエラーが発生することがあります。以下のフォーマットでの書き出しをお試し下さい。

QuickTimeのアニメーション圧縮(品質 : 最高)
QuickTimeのアニメーション圧縮(品質 : 最高)は比較的エラーが発生しにくいフォーマットとなります。
この圧縮方式は、可逆変換(劣化の無い変換)のためファイルサイズは非常に大きくなりますが、劣化の無い最良の品質となり、透過有りの場合も高品質に書き出すことができます。
一旦、QuickTimeのアニメーション圧縮(品質設定:最高)で書きだして頂き、他の動画編集ソフトなどでより高圧縮のファイルフォーマットに変換して頂くようお願い致します。

連番書き出し
動画を、複数のPNGの画像ファイルとして書き出します。PNGフォーマットのため劣化の無い最良の品質となります。
ただし、この方式では音声は出力出来ません。

複数のPNG画像からAdobe Premiere、Adobe AfterEffects、その他フリーウェアなどにより動画に変換できます。



    Q. MacのQuickTime動画の書き出しでエラーが出ます
    A. キャッシュ用のフォルダにアクセス権限がない場合にエラーが発生します。

Animator 32bit版 から QuickTime動画書き出しで下記のエラーが出る場合、キャッシュ用のフォルダへのアクセスが制限されている可能性があります。
ファイル」メニュー「キャッシュ設定」で、アクセス制限の無いフォルダ(デスクトップなど)を選んでください。





    全角入力だと移動ができないので半角入力モードにして下さい。
 




    組み込み用モデルでの描画を切り替えてください

Animatorのメニューバーの、「表示(V)」 > 「組み込み用モデルで描画(高速)」 のチェックを切り替えてください。




    64bit版のAnimatorをお使い下さい

Cubism ModelerとAnimatorに32bitと64bit版がありますが、2つの違いはソフトで使うメモリサイズが違います。
32bitの場合は、Javaの都合上、最大1000MBです。Animatorの右下にメモリ使用量が表示されています。
32bit AnimatorでGIF書き出しする際、以下のようなメモリ不足エラーが出た場合64bit版を使って下さい。




    Q. テンプレート機能が使えない
    キャッシュのフォルダを書き込み権限のある場所に変更して下さい

メニューから[ファイル] - [キャッシュ設定]にて、以下のウィンドウが表示されます。
選択ボタン押下し、書き込み権限のある場所に変更して下さい。



Comments