2

我正在尝试使用 SpriteSheet 运行动画。我的帧每个大小为 320x480,所以我最多可以在纹理图像上放置 6 个帧。但我的动画有时包含从 50 到 200 的帧数,并且都是 320x480 的大小。但是由于尺寸限制为 1024x1024,因此无法在纹理图像上添加这么多帧。有没有其他方法我可以尝试。我可以一个接一个地播放动画吗?它不会妨碍表演吗?拜托,我需要建议。最好的,Vaibhav Tekam。

4

1 回答 1

2

呃,你已经超出了设备可以处理的范围!您将不得不重新考虑您要实现的目标以及如何实现它。让我解释。

每个具有 32 位颜色的 1024x1024 纹理需要 4 MB 内存。如果你想要一个由 60 个全屏精灵组成的精灵动画,你需要 10 个这样的纹理。这使得 40 MB 的内存。或者 120 MB 用于具有 180 个动画帧的大写场景。

请记住,iOS 设备的 128 MB RAM 内存型号在理想条件下最多可为您的 App 提供大约 30 MB 内存。您将开始遇到只有五个 1024x1024 纹理的内存问题。256 MB 设备仍然只有大约 100 MB 可用于您的应用程序。

由于它应该是一个动画,因此也不能加载一个纹理,并且在每 6 个图像之后,删除该纹理并加载下一个。将 1024x1024 纹理加载到内存中大约需要 1-3 秒,具体取决于设备。在此期间,您的 App 将不负责任。

于 2010-07-30T21:02:30.643 回答