私はcocos2dを使っていて、背景が流れているという効果を得ようとしています... 私は次のコードを作成します。 しかし、いくつかの問題があります。 時間が経過すると、2つの画像間の距離が最初よりも大きくなります。 これはなぜですか? 私はこれを理解することができず、誰かが私を助けますか? バグはどこにありますか? コードに従います。cocos2d iPhoneを使用してフローの背景効果を作成する際の問題
- (ボイド)startScreen: {
mBackgroundFar.position = ccp(mBackgroundFar.position.x - 50*dt , mBackgroundFar.position.y);
if (mBackgroundFar.position.x < -SCREEN_WIDTH * 2)
[mBackgroundFar setPosition:ccp(SCREEN_WIDTH*2 , mBackgroundFar.position.y)];
mBackgroundFar1.position = ccp(mBackgroundFar1.position.x - 50*dt , mBackgroundFar1.position.y);
if (mBackgroundFar1.position.x < -SCREEN_WIDTH * 2)
[mBackgroundFar1 setPosition:ccp(SCREEN_WIDTH*2 , mBackgroundFar1.position.y)];
mBackgroundMiddle.position = ccp(mBackgroundMiddle.position.x - 150*dt , mBackgroundMiddle.position.y);
if (mBackgroundMiddle.position.x < -SCREEN_WIDTH * 2)
[mBackgroundMiddle setPosition:ccp(SCREEN_WIDTH*2 , mBackgroundMiddle.position.y)];
mBackgroundMiddle1.position = ccp(mBackgroundMiddle1.position.x - 150*dt , mBackgroundMiddle1.position.y);
if (mBackgroundMiddle1.position.x < -SCREEN_WIDTH * 2)
[mBackgroundMiddle1 setPosition:ccp(SCREEN_WIDTH*2 , mBackgroundMiddle1.position.y)];
mBackgroundNear.position = ccp(mBackgroundNear.position.x - 250*dt , mBackgroundNear.position.y);
if (mBackgroundNear.position.x < -SCREEN_WIDTH * 2)
[mBackgroundNear setPosition:ccp(SCREEN_WIDTH*2 , mBackgroundNear.position.y)];
mBackgroundNear1.position = ccp(mBackgroundNear1.position.x - 250*dt , mBackgroundNear1.position.y);
if (mBackgroundNear1.position.x < -SCREEN_WIDTH * 2)
[mBackgroundNear1 setPosition:ccp(SCREEN_WIDTH*2 , mBackgroundNear1.position.y)];
} DT(ccTime) ここ
、画像サイズが*(* 2 480)iPhoneのScreenWidth 2であり、全てのそれ。
いいえ、私はあなたの答えを理解しています。私のイメージはピクセルなしで計算されますか?私はピクセルごとに画像を拡大縮小すると思った。次に、上のコードはピクセルごとに基づいていないのですか? – user1304842