在cocos2d中重复背景有黑色边缘!

时间:2011-07-18 17:24:37

标签: iphone cocos2d-iphone background-image

我正在尝试为我的iPhone应用设置平铺/重复背景。

代码“有效”,因为背景重复应该是这样,但我似乎每次重复都有一个黑色边框,我不知道为什么,图像正好是200x200。以下是与代码一起查看的截图:

if ((self=[super init])) {
    CCSprite * bg = [CCSprite spriteWithFile:@"pattern11.jpg" rect:CGRectMake(0, 0, 1000, 520)];
    [bg setPosition:ccp(0, 0)];
    ccTexParams params = {GL_LINEAR,GL_LINEAR,GL_REPEAT,GL_REPEAT};
    [bg.texture setTexParameters:&params];
    [self addChild:bg z:0];
}

enter image description here

2 个答案:

答案 0 :(得分:4)

纹理应始终具有2的幂...如16,32,64,128,256,512,1024。

尝试将图像尺寸调整为256x256或128x128。

答案 1 :(得分:0)

我也遇到了这个相当普遍的问题,因为我无法在Cocos2d-iPhone中平铺任意大小的纹理,因此我将一个简单的TiledSprite类放在一起,将纹理或子纹理平铺/剪裁到任何宽度/高度。

在这里直接跳转到源代码(随意使用):

https://gist.github.com/Nolithius/6694990

或者在这篇简短的文章中查看用法示例,屏幕截图和评论:

http://www.nolithius.com/game-development/cocos2d-iphone-repeating-sprite

祝你好运!