質問: DxLibのLoadGraph()関数では読み込んだ画像はDeleteGraph()関数で削除するまでメモリに残留する、と聞きました。 そこで同じ画像を複数回読み込む場合、毎回LoadGraph()関数の前にDeleteGraph()関数をを呼び出さないとメモリは圧迫されてしまうのでしょうか? それとも既に読み込まれているということで、二回目以降は何も起きないのでしょうか? 解答よろしくお願いします。
回答: 同じ画像かの判別方法が、とても重い処理になることが予想されるので、 TaMaMhyuさんの回答と同じになりますが、無条件でメモリ確保されたり、 ビデオメモリに転送されたりすると思います。 (おそらく、戻り値のグラフィックハンドルが異なっていると思います) ちなみに、メモリでもフラグメンテーションは発生するので、DeleteGraphで 削除を繰り返してもメモリ圧迫される可能性があります。 少しでも軽減させるなら、ファイル名とファイル属性(更新日時など)を保持し、 変わっていれば、DeleteGraph→LoadGraphを呼び出すと良いと思います。