我正在使用Cocos2D。当图像是使用Texture Packer生成的纹理图集的一部分时,对图像进行平铺的最有效方法是什么?我有一个10 x 320的图像,我想将其平铺以填充屏幕。
我之前使用过这段代码来平铺图片
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:¶ms];
[self addChild:bgHolder];
但是当我想要平铺的图像不是正方形并且只是纹理的一小部分时,我认为我不能使用这种方法。
链接一堆CCSprites似乎对我来说效率很低,所以我希望有更好的方法。
答案 0 :(得分:1)
每个图块使用一个精灵。这是做到这一点的方法。您应该使用精灵批处理将绘制调用的数量保持为1.渲染48个精灵并不比使用精灵批处理渲染一个480x320精灵差。