Unity プラグイン版

プラグイン版は現在β版です。

通常はC#版をお使いください。


Q. RenderTargetTextureを拡大すると解像度が荒くなります。

A. Live2Dの描画方法とUnityの仕様上そうなってしまいます。下記回避方法をご確認ください。

  1. RenderTargetTextureのサイズを大きくする。

  2. もし表示しなくてもいいモデルの範囲がある時は、モデルが最も大きく映るように位置を設定する。

  3. 表示範囲にあわせてmocファイルを用意する。


Q. RenderTargetTextureに表示されるモデルの範囲は設定できますか?

A. 可能です。

Live2DModelUnityのsetMatrix()で行列を指定する事で任意の表示範囲にできます。
サンプルの標準ではsetMatrixWithRatio()を使用する事でテクスチャの範囲にモデルが収まるように自動設定されています。
このメソッドを参考にしてsetMatrixWithRatio()ではなくsetMatrix()を直接使って下さい。


Q. モデルのフェードイン・フェードアウトは可能ですか?

A. 可能です。

Unity上でのLive2D描画は、以下の通りです。

    1. Unity上のテクスチャAにLive2Dのモデルを描画

    2. テクスチャAをポリゴンに貼り付けて画面に表示

そこで、フェードイン・フェードアウトはテクスチャAのアルファ値を変更する必要があります。
アルファ値を変更できるはシェーダは標準では存在しないためシェーダをCreateして使う 必要があります。


Q. 利用可能なプラットフォームは?Web Player上では動作しますか?

A. 現在、iOS , Android , Windows(OpenGL) , MacOSX に対応しております。

WebPlayerには対応しておりません。
その他の機種は今後の対応を予定しておりますので詳しくはお問い合わせ下さい。

※ Web Player対応について

現バージョンのLive2D for Unityの動作に必要なUnityプラグイン機構がWebPlayerに対応していないため対応できません。
プラグインを使わない方式も現在検討しております。
WebPlayer対応版にご興味がありましたらご連絡下さい。


Q. 半透明の部分に色が乗ってしまう。黒フチ、白フチなどができてしまう

A1. 透明部分の色もれにより、意図しない色が出る場合の対策

OpenGLによりポリゴンを描くとき複数の画素の値が合成されて色が決定します。
テクスチャの完全透明部分に設定されている色が境界上の計算で意図せず計算に加えられるために、おかしな色が出ることになります。
完全に透明な部分を編集するには以下のアプリケーションをご利用下さい。

【 OPTPiX 】

テクスチャ加工用アプリケーション。
「透明境界の色もれ予防」などの機能にて行います。

LinearFilterTool

このフリーウェアでも同様の加工が可能です。
自己責任にてご利用頂きますようお願いいたします。
※ この問題は、Unityで採用しているのがNon-premultipliedという方式である事が影響しています。

今後Unityでの方式が変更された場合に、前処理が不要になる可能性があります。


A2. 背景との境界部分に色が乗る現象の対策

Unityの採用している Non-premulitiplied方式によって、FBO(フレームバッファオブジェクト)をクリアした色が背景との境界に出る場合があります。
LAppModelWrapperの下記メソッドにてクリア色を、背景色に近い値にするなどして目立たないようにして下さい。
背景色が特定できない場合は、0.5f でグレーにすることをオススメします。

setClearColor( 0.5f , 0.5f , 0.5f , 0.0f ) ;// RGBA


Q. WindowsのUnityEditor上のキャラクター描画がチラつく

A. Unityのprint( )命令を使った場合に、キャラクター描画に使用するFBO(フレームバッファオブジェクト)に問題が発生してFBO再初期化が走ります。

コメントをダンプしないようにすることで回避可能です。


Q. レンダリングされたキャラクターがフルカラーでていない

A. フルカラーのテクスチャ(24bit,32bit)を登録しても、UnityがCompressed(圧縮)または16bitカラー(65536色)となっていると、色がキレイに出ず、圧縮された汚い印象になる場合があります。

その場合は、テクスチャを選び Format [True color] を選択することでフルカラー表示になります。