★お知らせ(2023/12/27)
いつもLive2D公式コミュニティをご利用いただき誠にありがとうございます。
本コミュニティは2023年12月27日 11:00をもって閉鎖いたしました。
今後の運営はすべて新Live2D公式クリエイターズフォーラムに移行します。
閉鎖に伴い、以下機能は利用不可となります。
・アカウントの新規作成
・トピック投稿、返信
たくさんのご利用誠にありがとうございました。
新Live2D公式クリエイターズフォーラムは以下バナーよりご利用いただけます。
なお、本コミュニティに投稿されたトピックはすべて残りますが、今後削除する可能性がございますので予めご了承ください。
閉鎖に関するお問い合わせにつきましてはLive2D公式クリエイターズフォーラムへご連絡ください。
いつもLive2D公式コミュニティをご利用いただき誠にありがとうございます。
本コミュニティは2023年12月27日 11:00をもって閉鎖いたしました。
今後の運営はすべて新Live2D公式クリエイターズフォーラムに移行します。
閉鎖に伴い、以下機能は利用不可となります。
・アカウントの新規作成
・トピック投稿、返信
たくさんのご利用誠にありがとうございました。
新Live2D公式クリエイターズフォーラムは以下バナーよりご利用いただけます。
なお、本コミュニティに投稿されたトピックはすべて残りますが、今後削除する可能性がございますので予めご了承ください。
閉鎖に関するお問い合わせにつきましてはLive2D公式クリエイターズフォーラムへご連絡ください。
Cubism 4 SDK for Native R1 の Framework の全角文字対応について
お世話になっております。
ディスカッション『Cubism 4 SDK for Native R1 のサンプルと Live2D Cubism Viewer 4.0 の描画結果が異なる』の
内容文と若干被りますがご容赦ください。
Live2D のモデルを自作の DirectX 11 のプログラムで表示するために
Cubism 4 SDK for Native R1 のサンプル
CubismSdkForNative-4-r.1\Samples\D3D11\Demo\proj.d3d11.cmake
を参考に Live2D モデルを表示する処理を実装中なのですが、こちらで公開されているモデル
<Live2D東北きりたん立ち絵>
https://seiga.nicovideo.jp/seiga/im10026885?track=seiga_illust_keyword
について、Cubism 4 SDK for Native R1 のサンプルの読み込み対象のモデルを
上記モデルに変更した上で、更に LAppModel.cpp の Update関数内の以下の部分
if (_motionManager->IsFinished())
{
// モーションの再生がない場合、待機モーションの中からランダムで再生する
StartRandomMotion(MotionGroupIdle, PriorityIdle);
}
else
{
motionUpdated = _motionManager->UpdateMotion(_model, deltaTimeSeconds); // モーションを更新
}
を少し変更して
if (_motionManager->IsFinished())
{
static int Counter = 0;
switch( Counter )
{
case 0:
StartMotion("", 13, 1, nullptr);
break;
case 1:
StartMotion("", 12, 1, nullptr);
break;
case 2:
StartMotion("", 14, 1, nullptr);
break;
}
Counter = ( Counter + 1 ) % 3;
}
else
{
motionUpdated = _motionManager->UpdateMotion(_model, deltaTimeSeconds); // モーションを更新
}
このような、モーション『"モーション/永遠にきりたんぽ.motion3.json"』
『"モーション/もたれてくるきりたん.motion3.json"』
『"モーション/絶叫ビーバー.motion3.json"』をそれぞれ順番に
再生するように変更した状態で実行したところ、CubismJson.cpp の 100行目
Value& CubismJson::GetRoot() const
{
return *_root; // ←100行目
}
こちらでNULLアクセスとなりエラーとなってしまいました。
コールスタックを確認すると LAppModel.cpp の LAppModel::StartMotion の以下の部分
buffer = CreateBuffer(path.GetRawString(), &size);
の実行後、buffer が NULL となっていて、ファイルの読み込みに失敗しているようです。
Framework の文字列処理を拝見する限りでは全角文字に対応されていないようにお見受け致します。
( ファイルパスに全角文字が含まれるために、ファイル読み込みに失敗している…? )
大変お手数で申し訳ありませんが、Live2Dモデルは各ファイルの名前やIDに全角文字が使用されることも多いので、
Framework を全角文字に対応していただけないでしょうか?
ご検討の程、よろしくお願いいたします。
ディスカッション『Cubism 4 SDK for Native R1 のサンプルと Live2D Cubism Viewer 4.0 の描画結果が異なる』の
内容文と若干被りますがご容赦ください。
Live2D のモデルを自作の DirectX 11 のプログラムで表示するために
Cubism 4 SDK for Native R1 のサンプル
CubismSdkForNative-4-r.1\Samples\D3D11\Demo\proj.d3d11.cmake
を参考に Live2D モデルを表示する処理を実装中なのですが、こちらで公開されているモデル
<Live2D東北きりたん立ち絵>
https://seiga.nicovideo.jp/seiga/im10026885?track=seiga_illust_keyword
について、Cubism 4 SDK for Native R1 のサンプルの読み込み対象のモデルを
上記モデルに変更した上で、更に LAppModel.cpp の Update関数内の以下の部分
if (_motionManager->IsFinished())
{
// モーションの再生がない場合、待機モーションの中からランダムで再生する
StartRandomMotion(MotionGroupIdle, PriorityIdle);
}
else
{
motionUpdated = _motionManager->UpdateMotion(_model, deltaTimeSeconds); // モーションを更新
}
を少し変更して
if (_motionManager->IsFinished())
{
static int Counter = 0;
switch( Counter )
{
case 0:
StartMotion("", 13, 1, nullptr);
break;
case 1:
StartMotion("", 12, 1, nullptr);
break;
case 2:
StartMotion("", 14, 1, nullptr);
break;
}
Counter = ( Counter + 1 ) % 3;
}
else
{
motionUpdated = _motionManager->UpdateMotion(_model, deltaTimeSeconds); // モーションを更新
}
このような、モーション『"モーション/永遠にきりたんぽ.motion3.json"』
『"モーション/もたれてくるきりたん.motion3.json"』
『"モーション/絶叫ビーバー.motion3.json"』をそれぞれ順番に
再生するように変更した状態で実行したところ、CubismJson.cpp の 100行目
Value& CubismJson::GetRoot() const
{
return *_root; // ←100行目
}
こちらでNULLアクセスとなりエラーとなってしまいました。
コールスタックを確認すると LAppModel.cpp の LAppModel::StartMotion の以下の部分
buffer = CreateBuffer(path.GetRawString(), &size);
の実行後、buffer が NULL となっていて、ファイルの読み込みに失敗しているようです。
Framework の文字列処理を拝見する限りでは全角文字に対応されていないようにお見受け致します。
( ファイルパスに全角文字が含まれるために、ファイル読み込みに失敗している…? )
大変お手数で申し訳ありませんが、Live2Dモデルは各ファイルの名前やIDに全角文字が使用されることも多いので、
Framework を全角文字に対応していただけないでしょうか?
ご検討の程、よろしくお願いいたします。
0
コメント
書き込み誠にありがとうございます。
Live2DスタッフのTakでございます。
弊社製品をご愛顧くださり誠にありがとうございます。
Cubism SDK の Framework 全角文字対応につきましては、
お客様からのご要望として開発チームに共有し、今後の開発に活かしてまいります。
今後ともお引き立ての程何卒宜しくお願い申し上げます。
ご返答ありがとうございます。
今後ともよろしくお願いいたします。