Re: オブジェクト読み込みの限界容量 ( No.1 ) |
- 名前:管理人 日時:2016/10/29 02:30
エラーが発生する原因は恐らく使用できるメモリが限界に達しているのだと思います
32bitアプリの場合、ひとつのソフトが使用できるメモリの容量は 1GB未満なので、3Dモデルファイルの
内容によっては比較的すぐにメモリ容量の限界に達してしまいます( DXライブラリの3Dモデル読み込み処理が
非効率なので、20MB の mqoファイルでもファイルサイズの何倍ものメモリ容量を使用してしまいます… )
mqoファイルの容量を減らすことも方法のひとつですが、64bitアプリとしてコンパイルする方法もあります
32bitアプリでは、例えば仮にPCに 8GB のメモリを搭載していたとしても一つのソフトが使用できる
メモリ容量は 1GB 未満ですが、64bitアプリでは 1GB 以上のメモリを使用することができ、
メモリ不足によるエラーが発生しにくくなります
64bitアプリとして起動するにはお使いの開発環境が Visual Studio である必要がありますが、
もし Visual Studio でしたら以下の手順で 64bit版としてソフトを起動できますので
よろしければ試してみてください m(_ _)m
<VisualStudio で 64bit版としてビルドする方法>
プロジェクトを開いた状態で VisualStudioのメニューから
「ビルド」→「構成マネージャー」を選択して構成マネージャーを表示して、
『アクティブソリューションプラットフォーム』で「新規作成」を選び、
『新しいプラットフォームを入力または選択してください』の箇所を「x64」にしてOKを押すと、
64bit版プロジェクトが作成されます
その状態でビルドすると 64bit版の実行ファイルが作成されます
|
Re: オブジェクト読み込みの限界容量 ( No.2 ) |
- 名前:ごんた 日時:2016/10/31 10:30
ご回答ありがとうございます。
Windows8.1Pro/64bit/メモリ8GBで、教えていただいた方法を試したところ、
プログラムの
if( DxLib_Init() == -1 ) return -1;
で停止し
「ハンドルされない例外が 0x00007FF7FA38A420 (DxlNetworkBioSig.exe) で発生しました: 0xC0000005: 場所 0x0000000045C81C50 の読み取り中にアクセス違反が発生しました。」
と表示されます。
設定を変更したら直るものなのか、または、このパソコンでは不可能なのか教えていただきたいです。
|
Re: オブジェクト読み込みの限界容量 ( No.3 ) |
- 名前:管理人 日時:2016/11/02 17:39
DXライブラリのプログラムを実行すると、プログラムを実行したフォルダに Log.txt という
ファイルが作成されるのですが、よろしければ Log.txt の内容を掲示板にコピー&貼り付けして
いただけないでしょうか?
エラーが発生してしまう原因が分かるかもしれませんので… m(_ _;m
|
Re: オブジェクト読み込みの限界容量 ( No.4 ) |
- 名前:ごんた 日時:2016/11/07 16:07
返信遅れまして、申し訳ございません。
以下が、Log.txtです。宜しくお願いいたします。
2:システムの情報を出力します
4: DXライブラリ Ver3.08a
6: 論理プロセッサの数 : 8
7: OS Windows ( Build 9200 )
11: CPUID命令は使えません
13:COMの初期化... 成功しました
17:メモリ総量:8146.75MB 空きメモリ領域:4473.91MB
19:タイマーの精度を検査します
20:精度結果 更新回数 マルチメディアタイマー:0 パフォーマンスカウンター:60
21: パフォーマンスカウンターを使用します タイマー精度 : 3507.515000 KHz
22: ソフトの二重起動検査... 二重起動はされていませんでした
26:ウインドウクラスを登録します... 登録に成功しました
27:ウインドウモード起動用のウインドウを作成します
28:ウインドウの作成に成功しました
32:IMEを無効にしました
34:ウインドウスタイルをウインドウモード用に変更します... 完了
36:DirectInput関係初期化処理
36: DirectInput7 の取得中... 成功
83: 引き続き初期化処理... 初期化成功
86: ジョイパッドの初期化...
91: ジョイパッドの初期化は正常に終了しました
92: マウスデバイスの初期化... 初期化成功
94: キーボードデバイスの初期化... 初期化成功
96:DirectInput 関連の初期化は正常に終了しました
109:DirectSound の初期化を行います
110:DirectSound インターフェースの取得を行います.... 成功
130:引き続きインターフェースの初期化処理... 成功
212: DirectSound デバイスを列挙します
214: モジュール名: ドライバ記述:プライマリ サウンド ドライバー
215: モジュール名:{0.0.0.00000000}.{001fa5eb-320d-4787-994c-362942f7f307} ドライバ記述:スピーカー (Realtek High Definition Audio)
216: モジュール名:{0.0.0.00000000}.{245bd0d6-eae6-4125-9ce2-03a9e3b8ae87} ドライバ記述:Realtek Digital Output (Realtek High Definition Audio)
217: 最大サンプリングレート:200.00KHz 最小サンプリングレート:0.10KHz
217: 総サウンドメモリ領域:0.00KB 空きサウンドメモリ領域:0.00KB
218: 利用可能サンプリング精度
219: プライマリ 16bit = OK 8bit = OK
220: セカンダリ 16bit = OK 8bit = OK
221: 利用可能チャンネル
222: プライマリ MONO = OK STEREO = OK
222: セカンダリ MONO = OK STEREO = OK
224:DirectSound の初期化は正常に終了しました
243:DirectDraw オブジェクトの取得を行います.... 成功
260:引き続き初期化処理... 初期化に成功しました
407:IDirect3D9Ex オブジェクトを取得します.... 成功
412:IDirect3DDevice9Ex オブジェクトを取得します.... ハードウエア頂点演算を使用します
741:成功
742:Driver:nvd3dumx.dll Description:NVIDIA GeForce GTX 760
743:画面のフォーマットは D3DFMT_X8R8G8B8 です
744:Zバッファのフォーマットは D3DFMT_D16 です
745:16bit カラーフォーマットは D3DFMT_R5G6B5 です
745:32bit カラーフォーマットは D3DFMT_X8R8G8B8 です
746:アルファ付き 16bit カラーフォーマットは D3DFMT_A4R4G4B4 です
747:アルファ付き 32bit カラーフォーマットは D3DFMT_A8R8G8B8 です
747:アルファテスト用 16bit カラーフォーマットは D3DFMT_A1R5G5B5 です
748:アルファテスト用 32bit カラーフォーマットは D3DFMT_A8R8G8B8 です
749:DXT1テクスチャフォーマットはD3DFMT_DXT1 です
749:DXT2テクスチャフォーマットは D_D3DFMT_DXT2 です
750:DXT3テクスチャフォーマットはD3DFMT_DXT3 です
751:DXT4テクスチャフォーマットはD3DFMT_DXT4 です
751:DXT5テクスチャフォーマットはD3DFMT_DXT5 です
752:描画用 16bit カラーフォーマットは D3DFMT_R5G5B5 です
752:描画用 32bit カラーフォーマットは D3DFMT_X8R8G8B8 です
753:描画用アルファ付き 32bit カラーフォーマットは D3DFMT_A8R8G8B8 です
754:描画用ABGR整数16ビット型カラーフォーマットは D3DFMT_A16B16G16R16 です
754:描画用ABGR浮動小数点16ビット型カラーフォーマットは D3DFMT_A16B16G16R16F です
755:描画用ABGR浮動小数点32ビット型カラーフォーマットは D3DFMT_A32B32G32R32F です
756:描画用1チャンネル整数8ビット型カラーフォーマットは D3DFMT_L8 です
756:描画用1チャンネル整数16ビット型カラーフォーマットは D3DFMT_L16 です
757:描画用1チャンネル不動少数点16ビット型カラーフォーマットは D3DFMT_R16F です
758:描画用1チャンネル不動少数点32ビット型カラーフォーマットは D3DFMT_R32F です
758:描画用2チャンネル整数8ビット型カラーフォーマットは D3DFMT_A8B8G8R8 です
759:描画用2チャンネル整数16ビット型カラーフォーマットは D3DFMT_G16R16 です
760:描画用2チャンネル不動少数点16ビット型カラーフォーマットは D3DFMT_G16R16F です
760:描画用2チャンネル不動少数点32ビット型カラーフォーマットは D3DFMT_G32R32F です
761:同時にレンダリングできるバッファの数:4
762:最大テクスチャサイズ 幅:16384 高さ:16384
762:テクスチャステージテンポラリレジスタ:使用可
763:減算合成のハードウェア対応:ネイティブ
764:ハードウェア頂点シェーダーバージョンコード:300
764:エミュレーション頂点シェーダーバージョンコード:エミュレーション無し
765:ピクセルシェーダーバージョンコード:300
799:バックバッファロック転送の時間:124nsec 一時的な描画可能バッファを使用した転送の時間:1003nsec
800:バックバッファロックを使用します
801:Zバッファを作成します.... 成功
818:プログラマブルシェーダーを使用します
888:フォントの初期化を行います
891:フォントの初期化は正常に終了しました
|
Re: オブジェクト読み込みの限界容量 ( No.5 ) |
- 名前:管理人 日時:2016/11/07 22:41
|
Re: オブジェクト読み込みの限界容量 ( No.6 ) |
- 名前:ごんた(解決) 日時:2016/11/09 16:54
新しいバージョンで試してみたのですが、やはり同じエラーでダメみたいでした。
質問をさせていただいてる間に、オブジェクトをいくつかに分割する作業もしてまして、それで実行してみたところ、動作しました。
複数回の御回答ありがとうございました<(_ _)>
|