0

最近,我将我的项目迁移到 Kobold2D 1.1,其中包含 Cocos2D 1.1beta2,用于 iPad Retina Display。但是当我运行我的项目并尝试放置 TMX 平铺地图时,程序挂断了。问题是在 InitWithImage 中调用了 CCTexture2D,并且没有纹理格式 AI88 的案例。因此,程序进入默认状态并挂断。

我添加到代码中:

case kCCTexture2DPixelFormat_AI88:
    data = malloc(POTHigh * POTWide);
    info = kCGImageAlphaOnly; 
    context = CGBitmapContextCreate(data, POTWide, POTHigh, 8, POTWide, NULL, info);
    break;

与 kCCTexture2DPixelFormat_A8 的配置相同,现在代码有效。我使用了一个用 Tile Editor 0.8 制作的 TMX,并使用了一个简单的 PNG,不在任何纹理打包器中。TMX 中的名称是 fondomaze.png,但在项目中我必须重命名为 fondomaze-ipad.png。

希望你觉得有用。现在我的项目仍在工作,我可以放松一下了!

4

1 回答 1

0

发现 Retina Display iPad 的解决方法...必须将 malloc 增加 4。

data = malloc(POTHigh * POTWide * 4);

希望可以帮助想要使用 RD iPad 的人。

于 2012-03-25T12:27:34.043 回答