我需要使用cocos2d创建和显示10个图像。每个都将被放置在前一个之上,并且所有这些都将同时可见(所有这些都具有透明区域)。每张图片的分辨率为2048x1536。
当我创建5个或更少的CCSprites时,应用程序运行正常,但是当我创建6个CCSprite时 - 它在设备(iPad)上崩溃并出现“Data Formatters temporary unavailable”错误。
我认为它缺乏记忆,但也许有人知道这种情况的任何方法
谢谢!
答案 0 :(得分:1)
此尺寸的透明图像使用大约12mb ram(2048 * 1536 * 4字节)。
你很幸运,在你的应用程序崩溃之前你会看到5张这样大小的图像..这通常发生在大约50mb的ram使用情况。
如果不了解您想要做什么或需要显示什么,我无法提供任何建议......但是您将无法显示10个这样大小的图像。
编辑:由于您使用的是cocos / opengl,因此您可以通过将图像格式更改为rgb4444来获得更多图像。这样可以将内存需求减少到一半,但是你的图像质量也会下降。