1

Android Min3d ライブラリを使用して、Wavefront .obj ファイルから 3D モデルを読み込んで描画しています。

ライブラリは正常に動作します (.obj ファイルからの読み込みと描画) が、問題は、アプリを閉じてからもう一度起動すると、アプリがクラッシュし、Bitmap を作成しようとすると java.lang.OutOfMemoryError が表示されることです。メッシュ テクスチャ。3D モデル (サイズ 2048 x 2048) に 1 つの大きなテクスチャを使用します。

2 回目の起動でクラッシュするという事実は、Min3d フレームワークにメモリ リークがあることを示していますか?

このライブラリを使用している人は、この問題に遭遇したことがありますか? そして、これをどのように解決しますか?

ソース コードを読み取ろうとしたところ、Min3D がテクスチャを GPU に送信した後、テクスチャのビットマップが常に再利用されることがわかりました。というわけで、漏れはまだ見つかっていません。

この場合、何が問題になる可能性があるかについての洞察を教えていただけますか? 事前にt​​hx。

注: テクスチャのサイズを 1024x1024 に変更すると、2 回目の起動ではクラッシュしませんが、代わりに 4 回目または 5 回目の起動でアプリがクラッシュします。

4

2 に答える 2

1

開始時にゲームモデルをクリアします。リスト、配列...非同期タスクを使用する場合は、それらを見てください。

于 2012-10-04T17:06:55.600 に答える