1

我有一个很奇怪的问题。当我运行这段代码

CCTexture2DMutable * texture = [[CCTexture2DMutable alloc] initWithCGImage:image.CGImage resolutionType: kCCResolutioniPadRetinaDisplay];

    CGFloat heightOfImage = image.size.height;
    CGFloat heightOfTexture = texture.contentSize.height;

initWithCGImage是从 CCTexture2D 继承的方法。图像 <-- UIImage

我得到非常奇怪的结果:

在 iPad 模拟器上(工作正常):

高度图像 = 1024

纹理高度 = 1024

在 iPad(视网膜)上(不等于???):

高度图像 = 1024

纹理高度 = 512

有谁知道为什么?它让我疯狂。

如果我将 kCCResolutioniPadRetinaDisplay 更改为 kCCResolutioniPad,问题是一样的。

4

1 回答 1

1

Cocos 使用点进行测量,而不是像素(不再)。这就是为什么图像大小(以像素为单位)与纹理大小(以点为单位)不同的原因

于 2013-02-18T15:44:34.180 回答