我有一个很奇怪的问题。当我运行这段代码时
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,问题是一样的。
最佳答案
Cocos 使用点进行测量,而不是像素(不再)。这就是图像大小(以像素为单位)与纹理大小(以点为单位)不同的原因
关于ios - CCTexture2D 创建的 texture.size 不等于 image.size(仅在 iPad 上 --> iPad 模拟器工作正常),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14939309/