我正在尝试创建一个与游戏同步的背景。但是图像不是连续的。每个图像加载之间都有一个空格。我希望图像继续循环播放。
这是创建 Sprite 的方法
CCSprite *sprite = [CCSprite spriteWithFile"Image.png" rect:CGRectMake(0, 0, 960, 640)];
ccTexParams tp = {GL_NEAREST, GL_NEAREST, GL_REPEAT, GL_REPEAT};
[sprite.texture setTexParameters:&tp];
sprite.anchorPoint = ccp(1.0f/8.0f, 0);
sprite.position = ccp(screenW/8, 0);
更新 Sprite 位置的方法。
- (void) setOffsetXfloat)offsetX {
if (_offsetX != offsetX) {
_offsetX = offsetX;
CGSize size = _sprite.textureRect.size;
_sprite.textureRect = CGRectMake(_offsetX, 0, size.width, size.height);
}
}
请帮忙
Best Answer-推荐答案 strong>
您的图片宽度必须是 2 的幂。即宽度必须是 64、128、256、512 等,如果你想让它重复
您看到的差距是 OpenGL 为您的纹理填充了空白空间以使其成为 2 的幂。
关于ios - Cocos2d Sprite 连续,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/7376593/
|