テクスチャの表示がおかしい時

黒い縁がでる。白い縁がでる。などテクスチャの表示に問題がある場合は一度こちらを御覧ください。

半透明部分が黒ずむ

境界部分だけでなく、頬の部分などが黒ずんでいるかどうかがポイントです。
半透明合成の式がうまくいっていない可能性があります。

解決方法

Premultiplied Alpha(アルファ乗算済カラー)の設定を確認してください。
テクスチャデータがPremultiplied Alphaですが、Live2Dライブラリの設定がNon Premultiplied Alphaの可能性が高いです。
テクスチャデータの読み込み方式を変更するか、下記の設定で対応します。

live2DModel.setPremultipliedAlpha( true );

半透明部分が発光する

境界部分だけでなく、頬の部分などが光っているかどうかがポイントです。
半透明合成の式がうまくいっていない可能性があります。

解決方法

本質的には上の黒ずむ問題と同じです。Premultiplied Alpha(アルファ乗算済カラー)の設定を確認してください。
黒ずむ場合とは逆で、テクスチャデータがNon Premultiplied Alphaですが、Live2Dライブラリの設定がPremultiplied Alphaの可能性が高いです。
テクスチャデータの読み込み方式を変更するか、下記の設定で対応します。

live2DModel.setPremultipliedAlpha( false );


境界部分のみが黒ずむ

頬などの半透明がうまくいっているかどうかがポイントです。

上の黒ずむ問題と似ていますが、アルファブレンド自体はうまくいっています。

解決方法

テクスチャデータの縮小時にゴミデータを読み込んでいる可能性が高いです。
ゴミ取りツールを起動して、テクスチャをゴミ取りにかけてください。
※ 特にInternet Explorerやmobile safariで起こりやすいです


ジャギが目立ち、のっぺりした表示になる

色みが正常で、解像度のみおかしい場合です。

解決方法

ミップマップ機能を有効にしてください。
ミップマップという、縮小テクスチャを活用するための機能が無効になっている可能性が高いです。
有効にするには、テクスチャデータと設定が必要です。
テクスチャ読み込みはLive2Dライブラリ内では行いません。
SDKのサンプルなどを参考にしてください。


Unityで境界線がでる。

解決方法

テクスチャの設定を確認してください。
テクスチャのInspectorから「Alpha Is Transparency」にチェックが入っているかを確認してください。
チェックが入っていなければチェックしたあとにApplyボタンを押して適用してください。

Unityでテクスチャの解像度が低い

解決方法

テクスチャの圧縮フォーマットを確認してください。
テクスチャのインスペクタ上でFormatの項目がComplessedになっていると解像度が落ちる場合があります。
その場合はTrueColorに変更してください。

UnityでRenderTextureの解像度が低い

普通に表示したときとRenderTextureに表示したときで解像度に違いが出る状況のとき

解決方法

RenderTextureのインスペクタでサイズを確認してください。
このサイズを大きくすると3D空間でのサイズではなく解像度が向上します。

部分的に発光する

モデルの頬の部分のみ白く表示される

バージョンが古いなどが原因で、正常に描画されていないと考えられます。


WebGL版で境界線が出る

IEやiOS版のSafari、iOS版Chromeでテクスチャが重なる部分にグレーまたは白い線が表示される

解決方法

テクスチャのゴミ取りツールで「WebGLに最適化」にチェックを入れ、「透明部分の太らせ幅(WebGL)」を10、「太らせ幅」を20に設定して、テクスチャのゴミ取りを行ってください。

太らせ幅の設定

WebGLに最適化のチェックと、透明部分の太らせ幅の設定

うまくいかない場合は「透明部分の太らせ幅(WebGL)」や「太らせ幅」の設定を変更してください。


その他の情報

異方性フィルタリングのON/OFFで、たまに出るゴミが消せるケースがあります。