Re: Live2Dのモデル読み込み時にエラーとなってしまう ( No.1 ) |
- 名前:管理人 日時:2020/05/19 02:27
お使いのDXライブラリは最新バージョン( 3.21f )でしょうか?
あと、お使いの Live2D の SDK は最新バージョン( Cubism 4 SDK for Native R1 )でしょうか?
DXライブラリが対応しているバージョンと、使用される Live2D SDK のバージョンが一致していないと
正常に読み込むことができませんので、もしどちらかが最新バージョンではありませんでしたら
最新バージョンで試してみてください m(_ _)m
( 因みに最新バージョンでは Live2D_SetCubism3CoreDLLPath の 3 が 4 になって Live2D_SetCubism4CoreDLLPath となっています )
|
Re: Live2Dのモデル読み込み時にエラーとなってしまう ( No.2 ) |
- 名前:ひら 日時:2020/05/19 10:09
お返事ありがとうございます。
DXライブラリを最新版に上書きして、Live2DのSDKのバージョンがCubism 4 SDK for Native R1 であることを確認しました。
(DX.Live2D_SetCubism3CoreDLLPath関数 から DX.Live2D_SetCubism4CoreDLLPath関数に変更しました。)
それでも、-1の値を返して正常に読み込むことができませんでした....
他に考えられる原因は御座いますでしょうか?
念のためソースコードをGithubに上げさせていただきます。
よろしければ参考にしていただければ幸いです。
ttps://github.com/Hira844/Live2D/tree/master/Live2D/Live2D
何卒、よろしくお願いいたします。
|
Re: Live2Dのモデル読み込み時にエラーとなってしまう ( No.3 ) |
- 名前:にこよう 日時:2020/05/19 13:14
Live2D_SetCubism4CoreDLLPath()はDxLib_Init()の前に呼ぶ必要があります
あと一つ気になったのですが、Dxlibのログは起動時に自動で毎回クリアされます
出力したくないのであれば以下の設定で出力しなくなります
SetOutApplicationLogValidFlag(FALSE);
ご存知でしたらすみません
|
Re: Live2Dのモデル読み込み時にエラーとなってしまう ( No.4 ) |
- 名前:ひら 日時:2020/05/19 14:36
にこようさん お返事有難うございます。
Live2D_SetCubism4CoreDLLPath()とDxLib_Init()の位置を修正しました。ご指摘ありがとうございます。
それと、自動でクリアされることは知りませんでした。ありがとうございます。
コードを修正させていただきます。
(実行してもまだ-1の値を返してきました。)
|
Re: Live2Dのモデル読み込み時にエラーとなってしまう ( No.5 ) |
- 名前:管理人 日時:2020/05/20 03:56
> それでも、-1の値を返して正常に読み込むことができませんでした....
> 他に考えられる原因は御座いますでしょうか?
私も手元で『デスクトップマスコット「琴葉茜」』を読み込むプログラムを組んでみたところ、
16384x16384というとても巨大な画像が使用されていたため、32bitアプリ( x86アプリ )設定では
メモリが足りず読み込みに失敗しました
64bitアプリ( x64アプリ )設定では正常に読み込めましたので、もしC#のプロジェクトの起動設定が
x86 設定になっていましたら、x64 設定にしてみてください
また、搭載されているグラフィックスデバイスが 16384x16384 のサイズのテクスチャに
対応していない場合も読み込みに失敗すると思います
こちらが原因の場合は作者の方に使用する画像を小さくしていただくしかありません…
あと、デフォルトの Any CPU 設定の場合はOSが32bit版の場合 32bitアプリとして起動しますので
Live2D_SetCubism4CoreDLLPath で設定する dll は以下のように 32bit起動の場合と
64bit起動の場合で分ける必要があります
if (System.IntPtr.Size == 8)
{
// 64bit起動の場合
DX.Live2D_SetCubism4CoreDLLPath("x86_64/Live2DCubismCore.dll");
}
else
{
// 32bit起動の場合
DX.Live2D_SetCubism4CoreDLLPath("x86/Live2DCubismCore.dll");
}
|
Re: Live2Dのモデル読み込み時にエラーとなってしまう ( No.6 ) |
- 名前:ひら 日時:2020/05/20 22:41
管理者様 お返事ありがとうございます。
> また、搭載されているグラフィックスデバイスが 16384x16384 のサイズのテクスチャに
> 対応していない場合も読み込みに失敗すると思います
本当に無知で申し訳ないのですが、
グラフィックスデバイスが対応しているテクスチャのサイズを確認する方法を
どうか、教えていただけないでしょうか?
少し調べてみましたが、正確かどうかよくわかりませんでした....
デスクトップを右クリック → 画面の解像度 → 解像度
というもので合っているのでしょうか?
本当に無知で申し訳ございません。
|
Re: Live2Dのモデル読み込み時にエラーとなってしまう ( No.7 ) |
- 名前:管理人 日時:2020/05/21 01:37
DXライブラリを使用したプログラムを実行すると作成されるログファイル( Log.txt )の
以下の『最大テクスチャサイズ』と書かれている行でグラフィックスデバイスが対応している
テクスチャの最大サイズを確認することができます
825: 最大テクスチャサイズ 幅:16384 高さ:16384
> デスクトップを右クリック → 画面の解像度 → 解像度
> というもので合っているのでしょうか?
いえ、こちらは画面の解像度なので、最大テクスチャサイズとは関係ありません
|
Re: Live2Dのモデル読み込み時にエラーとなってしまう ( No.8 ) |
- 名前:ひら(解決済み) 日時:2020/05/21 20:58
Live2D_SetCubism4CoreDLLPathを
32bit起動の場合と64bit起動の場合で分けた結果、
正常に読み込むことができました。
回答してくださった皆様、本当にありがとうございました。
|