cocos2d-x中背景图片滚动 void BackgroundLayer::logic(float dt){ int PosY1 = m_bg1->getPositionY();//图片1的y坐标 int PosY2 = m_bg2->getPositionY();//图片2的y坐标 int iSpeed = 3;//图片滚动的速度 //两张地图一起滚动 PosY1 += iSpeed; PosY2 += iSpeed; //获得屏幕的宽度 int visibleHeight = Director::getInstance()->getVisibleSize().height; //当第一个地图完全离开屏幕时第二个地图完全出现在屏幕上,同时让第一个地图紧贴在第二地图的后面 if(PosY1 > visibleHeight * 1.5f){ PosY2 = visibleHeight * 0.5f; PosY1 = -visibleHeight * 0.5f; } //同理,当第二个地图完全离开屏幕时第一个地图完全出现在屏幕上,同时让第二个地图紧贴在第一个地图后面 if(PosY2 > visibleHeight * 1.5f){ PosY1 = visibleHeight * 0.5f; PosY2 = -visibleHeight * 0.5f; } m_bg1->setPositionY(PosY1); m_bg2->setPositionY(PosY2); }