初めて質問させて頂きます。
DxArchive で作成したファイルからMMDモデルをロード(MV1LoadModel)すると、内部でメモリリークが発生しているようです。
↓プログラム終了時のログ↓
3715:
3715:Alloc memory dump
3715: size: 1432( 1.398kb) file:\DxArchive_.cpp line:3202 ID:33 addr:0aee5768 data:...
3716: size: 1112( 1.086kb) file:\DxArchive_.cpp line:1448 ID:32 addr:0aee5298 data:...
3716: size: 640( 0.625kb) file:s\DxFileWin.cpp line:245 ID:31 addr:0aee4fa0 data:...
3716: Total size:3184(3.109kb) Alloc num:3
3716:
モデル読み込み時にアーカイブ展開処理も同時に行われているが、モデル破棄時にはアーカイブの終了処理が行われない。(終了していいか判断つかないから?)
という事だと思い、以下の実験を行いました。
【その1:リークなし】
MV1DeleteModel の後に DXArchiveRelease で対象の dxa を解放してやる。
【その2:リークあり】
SetDXArchiveExtension で拡張子を変更。
MV1DeleteModel の後に DXArchiveRelease で対象のアーカイブを解放してやる。
(結果、されていない)
【その3:リークなし】
LoadGraph で bmp を読み込むだけ。
DXArchiveRelease はしない。
結論として
・ dxa 拡張子のままで
・ DXArchiveRelease も行う
のが回避手段だと思ったのですが、以下の3点について質問させて下さい。
1. 他に回避手段はあるのか?(できれば拡張子は変更して運用したい)
2. そもそもの使い方を間違えているのか?
3. ライブラリ側の不具合なのか?
長々と失礼致しました。
宜しくお願い致します。