★お知らせ(2023/12/27)
いつもLive2D公式コミュニティをご利用いただき誠にありがとうございます。
本コミュニティは2023年12月27日 11:00をもって閉鎖いたしました。
今後の運営はすべて新Live2D公式クリエイターズフォーラムに移行します。
閉鎖に伴い、以下機能は利用不可となります。
・アカウントの新規作成
・トピック投稿、返信
たくさんのご利用誠にありがとうございました。
新Live2D公式クリエイターズフォーラムは以下バナーよりご利用いただけます。
なお、本コミュニティに投稿されたトピックはすべて残りますが、今後削除する可能性がございますので予めご了承ください。
閉鎖に関するお問い合わせにつきましてはLive2D公式クリエイターズフォーラムへご連絡ください。
いつもLive2D公式コミュニティをご利用いただき誠にありがとうございます。
本コミュニティは2023年12月27日 11:00をもって閉鎖いたしました。
今後の運営はすべて新Live2D公式クリエイターズフォーラムに移行します。
閉鎖に伴い、以下機能は利用不可となります。
・アカウントの新規作成
・トピック投稿、返信
たくさんのご利用誠にありがとうございました。
新Live2D公式クリエイターズフォーラムは以下バナーよりご利用いただけます。
なお、本コミュニティに投稿されたトピックはすべて残りますが、今後削除する可能性がございますので予めご了承ください。
閉鎖に関するお問い合わせにつきましてはLive2D公式クリエイターズフォーラムへご連絡ください。
描画モードの設定について
いつもお世話になっております。
現在、UnityでLive2Dの手前に半透明込みのエフェクトを表示しようとしております。
マニュアルにある通り、L2D_RENDER_DRAW_MESHにて描画をしようとしておりますが、
setRenderModeでL2D_RENDER_DRAW_MESHに設定するとLive2Dの表示が消えてしまいます。
SDK付属のDrawMeshModeのプロジェクトを実行してもLive2Dが消えてしまい、
L2D_RENDER_DRAW_MESH_NOWに変更すると描画されるようになります。
上記、不具合についてどのような原因が考えられますでしょうか?
実行環境は下記の通りとなります。
Windows7 Professional
Unity ver4.5.5f1
Live2D Cubism SDK [2014/11/07] 2.0.01_1
現在、UnityでLive2Dの手前に半透明込みのエフェクトを表示しようとしております。
マニュアルにある通り、L2D_RENDER_DRAW_MESHにて描画をしようとしておりますが、
setRenderModeでL2D_RENDER_DRAW_MESHに設定するとLive2Dの表示が消えてしまいます。
SDK付属のDrawMeshModeのプロジェクトを実行してもLive2Dが消えてしまい、
L2D_RENDER_DRAW_MESH_NOWに変更すると描画されるようになります。
上記、不具合についてどのような原因が考えられますでしょうか?
実行環境は下記の通りとなります。
Windows7 Professional
Unity ver4.5.5f1
Live2D Cubism SDK [2014/11/07] 2.0.01_1
0
コメント
以下のページの、「描画モードの設定方法」の3を参照してください。
https://sites.google.com/a/cybernoids.jp/cubism2/sdk_tutorial/platform-setting/unity/csharp/render-mode
ご返答ありがとうございます。
記載漏れがあり、申し訳ございません。
draw()のタイミングはOnRenderObject()からUpdate()に変更しています。
下記がソースになります。
Sceneはこのmain.csを空のゲームオブジェクトにアタッチし、Moc FIleにmiku.moc.bytesをセット。
Textureにmiku.2048/texture_00.pngをセットした状態となっております。
カメラのプロジェクションもOrthographicへ変更してあります。
追加で提示すべきことがありましたら、ご指摘お願い致します。
=============================================
using UnityEngine;
using System.Collections;
using live2d; //Live2Dライブラリを使用
public class main : MonoBehaviour {
public TextAsset mocFile; // mocファイル
public Texture2D texture; // テクスチャファイル
private Live2DModelUnity live2DModel; //Live2Dモデルクラス
void Start ()
{
//初期化(Live2Dを使用する前に必ず1度だけ呼び出す)
Live2D.init();
//モデルデータを読み込む
live2DModel = Live2DModelUnity.loadModel ( mocFile.bytes );
//テクスチャの関連付け
live2DModel.setTexture( 0, texture );
//描画モードを指定
live2DModel.setRenderMode( Live2D.L2D_RENDER_DRAW_MESH );
}
// デフォルトでは DrawMeshNow でLive2Dモデルを描画するので OnRenderObject を使う
void OnRenderObject ()
{
}
void Update ()
{
//表示位置と大きさの指定
Matrix4x4 m1 = Matrix4x4.Ortho( 0, 900, 900, 0, -0.5f, 0.5f );
Matrix4x4 m2 = transform.localToWorldMatrix;
Matrix4x4 m3 = m2 * m1;
live2DModel.setMatrix( m3 );
//経過時間で顔の角度Xを動かす
float time = UtSystem.getUserTimeMSec() / 1000f;
live2DModel.setParamFloat( "PARAM_ANGLE_X", 30 * Mathf.Sin( time ), 1);
//頂点の更新
live2DModel.update();
//モデルの描画
live2DModel.draw();
}
}
一つ前の2.0.00_1では正常に表示されるますので、そちらのライブラリをお使いください。
この不具合は次の更新時に修正させていただきます。
報告ありがとうございました。
ご返答ありがとうございます。
SDK側の不具合の件、了解しました。
ひとまず、2.0.00_1で開発を進めます。
ご丁寧に対応いただき、ありがとうございました。
近日中に修正版を公開いたします。