• TOP
  • >
  • その他
  • >
  • 動く背景を作成する

動く背景を作成する

ゲームで利用できる動く背景を今回紹介をします。

アクションゲームやシューティングゲームでは、よく背景を動かして恰もPlayerが動いている、そんな表現をcocos2d-xで実装できます。
今回は、そのような「動く背景」を簡単に設定できるCCParallaxNodeクラスを利用します。

ParallaxNodeの設定

CCParallaxNodeクラスは、複数の画像を登録して、その動きを一括で管理できるクラスです。
ここに背景に必要な画像を用意して、個別にそのスピードを設定します。

【Ver3.x】
//CCSpriteクラスで画像を設定します。
auto sprite1 = Sprite::create("kumo000.png");
auto sprite2 = Sprite::create("mountain001.png");     

//これをCCParallaxNodeクラスで利用します。
prallNode = ParallaxNode::create();
prallNode->setPosition(Point(-100,0));
prallNode->addChild(sprite1, 1, Point(3,0), Point(240,200));
prallNode->addChild(sprite2, 2, Point(1,0), Point(240,110));

this->addChild(prallNode,1);


【Ver2.x】
//CCSpriteクラスで画像を設定します。
 CCSprite *sprite1 = CCSprite::create("kumo000.png");
 CCSprite *sprite2 = CCSprite::create("mountain001.png");     

//これをCCParallaxNodeクラスで利用します。
prallNode = CCParallaxNode::create();
prallNode->setPosition(ccp(-100,0));
prallNode->addChild(sprite1, 1, ccp(3,0), ccp(240,200));
prallNode->addChild(sprite2, 2, ccp(1,0), ccp(240,110));

this->addChild(prallNode,1);


コードの解説

画像を登録する時に、スピードや位置をそれぞれ設定出来ます。
prallNode->addChild(sprite1, 1, ccp(3,0), ccp(240,200));

引数は4つあります。
  • 引数1:画像を指定
  • 引数2:Z値を指定
  • 引数3:画像の移動スピードを設定
  • 引数4:画像の位置を設定

動かす

後は、Actionクラスまたはルートを利用して、ParallaxNodeを動かして上げれば設定通りにSpriteが動きます。

            

経営育成ゲーム「わたしの動物園」をリリースしました!

cocos2dxを使って作成したアプリを作成しました。
無料で遊べますので、ぜひゲーム作りの参考にしてみて下さい!

【Sponsored Link】

更新履歴