【问题标题】:How can you repeat a background in cocos2d when HxW lengths are not a power of 2?当 HxW 长度不是 2 的幂时,如何在 cocos2d 中重复背景?
【发布时间】:2012-10-05 20:32:28
【问题描述】:

在尝试创建重复的图块覆盖时,我发现了很多问题(例如 this one) 提到 Cocos2d 中重复的图像必须具有高度和宽度尺寸是 2 的幂。

这提出了两个问题。首先,为什么这是一个限制?其次,更重要的是,如何创建尺寸不是 2 次方的重复滚动图像?如果我有一个非常宽的背景(比如 4000 像素)并且我希望它在 X 轴上重复。在这种情况下我应该怎么做?我不敢相信“正确”的答案是在宽度上增加 96 个像素,并将图像的高度也增加到 4096。那是浪费字节!

【问题讨论】:

    标签: iphone ios cocos2d-iphone


    【解决方案1】:

    这个答案有很好的信息说明为什么需要 2 个纹理的力量。

    Why do images for textures on the iPhone need to have power-of-two dimensions?

    至于您的第二个问题,纹理不必是方形的,只要宽度和高度都必须是 2 的幂。因此,您可以将 4096x128 的图像重复作为背景。还要记住,无论大小如何,纹理始终以两倍大小的未压缩幂存储在内存中。因此,宽度为 4000 的图像和宽度为 4096 的图像实际上使用了相同数量的内存。

    【讨论】:

    • 啊,我明白了。由于我读过的所有示例,我确实认为图像必须是方形的。
    猜你喜欢
    • 2012-06-07
    • 1970-01-01
    • 2012-11-30
    • 1970-01-01
    • 2012-08-03
    • 1970-01-01
    • 2021-07-29
    • 2012-08-22
    • 1970-01-01
    相关资源
    最近更新 更多