我正在使用Android Min3d库从Wavefront .obj文件加载和绘制3D模型。

该库工作正常(从.obj文件加载和绘图),但问题是当我关闭该应用程序时,然后再次启动它,该应用程序崩溃并在尝试为该应用程序创建Bitmap时显示java.lang.OutOfMemoryError。网格纹理。我将单个大型纹理用于3D模型(大小为2048 x 2048)。

它在第二次启动时崩溃的事实是否表明Min3d框架中存在内存泄漏?

使用此库的人有遇到过这个问题吗?您如何解决呢?

我已经尝试阅读源代码,并且我看到在Min3D将纹理发送到GPU之后,纹理的位图总是被回收。所以我还没有发现任何泄漏。

您能为我提供有关这种情况下可能出现的问题的见解吗?提前谢谢。

注意:如果我将纹理的大小调整为1024x1024,则第二次启动不会崩溃,但是该应用将在第4/5次启动时崩溃。

最佳答案

在开始时清除游戏模型。列表,数组...
如果您使用异步任务,请查看它们。

10-08 16:12