1

私は現在、2Dのタイルベースのゲームのマップエディターで作業しています。新しいマップを作成すると、タイルセットがメモリに読み込まれ、JScrollPane内のJPanelに表示されるため、描画するタイルを選択できます。

最初は完全な画像を描画していましたが、スクロールがかなり遅くなったため、現在は画像の表示部分のみを描画しており、問題なく機能します。タイルセットがかなり大きいので、私が心配しているのはメモリ使用量です。OutOfMemoryエラーは発生していませんが、できる限り最適化したいと思います。

ImageReaderをImageReadParam.setSourceRegion();と一緒に使用してみました。使用するメモリははるかに少なくなりますが、スクロールが遅くなり、スクロール時に画像が狂ったように点滅します。おそらく、ディスクから画像を読み取るのに時間がかかるためです。

それで、完全にロードせずに大きな画像の一部をすばやくロードする良い方法はありますか?または、圧縮された方法で完全にロードする方法はありますか?

4

0 に答える 0