4
我有三個圖像(320x480),我試圖在Cocos2D應用程序中垂直滾動。Cocos2D垂直滾動背景
在我的初始化方法,我有以下幾點:
//adding background sprites
background = [CCSprite spriteWithFile:@"BG1.png"];
background2 = [CCSprite spriteWithFile:@"BG2.png"];
//position background sprites
background.position = ccp(size.width, size.height/2);
background2.position = ccp(size.width, size.height*2);
//schedule to move background sprites
[self schedule:@selector(scroll:)];
//adding them to the main layer
[self addChild:background z:0];
[self addChild:background2 z:0];
這是我的渦旋式壓縮機方法:
-(void) scroll:(ccTime)dt
{
//move 30*dt px vertically
background.position = ccp(background.position.x, background.position.y - 30*dt);
background2.position = ccp(background2.position.x, background.position.y - 30*dt);
//reset offscreen position
if (background.position.y < 290)
{
background.position = ccp(480/2, 480);
}else if (background2.position.y < 290)
{
background2.position = ccp(480/2,480);
}
}
目前所發生的事情是我的第一個背景圖像通過的大約四分之一偏移屏幕(水平),它從屏幕底部開始四分之一處,但是它向下滾動。我的第二張背景圖片實際上並沒有產生,第一張圖片在偏移時反覆循環。有什麼辦法可以使兩幅圖像在背景中平滑地循環,以及如何合併第三幅圖像?
此外,只是一個快速的側面問題,它是不好的命名對象(我認爲他們是對象)與他們的名字中的數字(即background2/background3)?
在我看來就像background2的y座標是太高,所以它開始關閉屏幕並在那裏停留。 – lins314159 2011-03-29 22:43:26