【发布时间】:2011-06-24 01:53:03
【问题描述】:
我有一个正常的 Main Activity,它调用 Game Activity Surface(在 Open GL 中),它会加载所有纹理以便玩游戏。
如果我放弃使用 OpenGL 表面的活动,引擎会删除纹理并关闭活动游戏。看起来不错,但是……
在主要活动(正常活动)中,如果我调用游戏活动(重复加载纹理),游戏会在堆中消耗大量内存(似乎重复)并且游戏的帧速率会变慢。如果我重复这个过程,内存堆正在增加。
如果我关闭整个应用程序会发生什么? Android 释放,我可以以正常速度和内存消耗重新打开应用程序。
我试过垃圾......似乎与opengl表面有关。
我的问题:关闭包含Open gl的表面活动,open gl缓冲区仍然分配在堆中?关闭后,使用 open gl 打开一个新活动会复制 open gl 大小?在记忆中似乎发生了,但我可以找出原因。
【问题讨论】: