1

我正在制作一个游戏,其中有几个随机出现在屏幕上的小角色 MovieClip。可以有多个相同类型的字符,当它们从舞台中删除时,我将它们存储在内存池中以重复使用它们。

这些角色有几个不同的关键帧,我称之为让他们做特定的事情,比如飞行、着陆等。为了提高性能,为他们的不同动作制作了 flvs,这些已经嵌入到时间轴中。

我遇到了一个问题,即分配给视频的内存量随着游戏的进行而不断增加,即使我没有制作更多的角色实例。我一直在研究垃圾收集视频,但我发现的所有东西都是在使用 FLVPlayback 组件时使用的,我没有发现任何有用的东西。

有没有人有任何想法?

谢谢!

4

1 回答 1

0

你的记忆力增加了多少?如果它从 ie 开始。80 MB 并且缓慢增加,即。到140,然后要么呆在那里,要么降到120再小幅上涨,那就不用担心了。不幸的是,这就是 Flash GC 的工作方式。即使您没有泄漏任何内存,它也会慢慢显示内存增加(然后突然下降,因为 GC 收集垃圾,然后再次缓慢上升)。

但是,也可能是您有真正的内存泄漏,但要进行评估,您需要发布一些代码。顺便说一句,在游戏中使用内存池是一个好主意,你已经在这样做了。

于 2013-07-17T16:13:14.233 回答