/ / Kacheln eines Bildes, das Teil eines Texturatlas ist - iphone, ios, opengles, cocos2d-iphone, texturepacker

Tiling ein Bild, das Teil eines Texturatlas ist - Iphone, IOS, opengl-es, cocos2d-iphone, Texturpacker

Ich benutze Cocos2D. Was ist die effizienteste Methode, um ein Bild zu kacheln, wenn es Teil eines Texturatlas ist, der mit Texture Packer erstellt wurde? Ich habe ein Bild mit einer Größe von 10 x 320 und möchte es kacheln, um den Bildschirm auszufüllen.

Ich habe diesen Code zuvor zum Kacheln von Bildern verwendet

bgHolder = [CCSprite spriteWithFile:@"bg.png" rect:CGRectMake(0, 0, 700, 300*155)];
ccTexParams params = {GL_LINEAR,GL_LINEAR,GL_REPEAT,GL_REPEAT};
[bgHolder.texture setTexParameters:&params];
[self addChild:bgHolder];

aber ich glaube nicht, dass ich diesen Ansatz verwenden kann, wenn das Bild, das ich kacheln möchte, nicht quadratisch ist und nur einen kleinen Teil der gesamten Textur darstellt.

Die Verkettung einer Reihe von CCSprites scheint mir ziemlich ineffizient zu sein, also hoffe ich, dass es einen besseren Weg gibt.

Antworten:

1 für die Antwort № 1

Verwenden Sie ein Sprite pro Fliese. So macht man das. Sie sollten Sprite Batching verwenden, um die Anzahl der Draw Calls auf 1 zu halten. Das Rendern von 48 Sprites ist nicht viel schlechter als das Rendern eines 480x320-Sprites, wenn Sie Sprite Batching verwenden.