CCSpriteについて#02

タイリングする方法。下記コードでできる。
CCSprite* s=[CCSprite spriteWithFile:@"bridge.png":];
[s setAnchorPoint:CGPointMake(0.0, 0.5)];
ccTexParams params = {GL_LINEAR,GL_LINEAR,GL_REPEAT,GL_REPEAT};
[s.texture setTexParameters:¶ms];
[s setTextureRect:CGRectMake(0.0,0.0,42.0*4.0,62.0)];

と、思ったらうまくいかない。


この画像をタイリングしようとすると
本当は下記のようになって欲しい

理想


現実


何故か隙間が出来る。どうやらOpenGLESとやらは2の累乗ピクセルおきにタイリングするらしい。
widthが20pxなら32pxおきにタイリング。今回の画像はwidthが42pxだから64pxおきにタイリングされる。

これはどうにもならないらしい。うまいこと2の累乗ピクセルの画像にするしかないのか。
何かいい方法がわかったら追記します。