Повторяющийся фон в cocos2d имеет черные края! - PullRequest
5 голосов
/ 18 июля 2011

Я пытаюсь настроить мозаичный / повторяющийся фон для своего приложения для 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 ]

4 голосов
/ 19 июля 2011

Текстуры всегда должны быть во власти двух ... как 16,32,64,128,256,512,1024.

Попробуйте изменить размер изображения до 256x256 или 128x128.

0 голосов
/ 25 сентября 2013

Я также натолкнулся на эту довольно распространенную проблему, заключающуюся в невозможности мозаичного размещения текстур произвольного размера в Cocos2d-iPhone, поэтому я собрал простой класс TiledSprite для разбиения / обрезания текстуры или субтекстуры любой ширины / высоты.

Здесь можно перейти прямо к исходному коду (используйте по желанию):

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

Или ознакомьтесь с примером использования, снимком экрана и комментариями в этом кратком изложении.статья:

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

Удачи!

...