0

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

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

4

1 回答 1

1

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

为什么 iPhone 上的纹理图像需要二维的幂?

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

于 2012-10-05T21:47:01.727 回答