Lab

Cocos2d-x v3:ジャンプのアニメーション

 Tag :  Published : 2014-8-5

Pocket

JumpTo、JumpByを使用します。
スプライトがジャンプするアニメーションを作ります。
> Ver2.x : 『ジャンプのアニメーション』はこちら

ジャンプのアニメーション – 絶対値で指定(JumpTo)

画面の左端から右端へジャンプしながら移動するアニメーションを作成します。
移動時間を1秒、ジャンプの最高点を400、ジャンプの回数を3回に設定します。

    //スプライトの作成
    Size s = Director::getInstance()->getVisibleSize();
    auto pImg = CCSprite::create("1.png");
    Size size = pImg->getContentSize();
    pImg->setPosition(Vec2(size.width/2, size.height/2));
    this->addChild(pImg);
    
    //時間:1秒 移動距離:画面の右端 ジャンプの最高点:400 ジャンプの回数:3回
    auto action = JumpTo::create(1, Vec2(s.width-size.width/2, size.height/2), 400, 3);
    
    //開始!
    pImg->runAction(action);
    

ジャンプのアニメーション – 相対値で指定(JumpBy)

現在地からX方向へ300ずつ、ジャンプしながら移動するアニメーションを作成します。
移動時間を1秒、ジャンプの最高点を400、ジャンプの回数を3回に設定します。

    //スプライトの作成
    auto pImg = CCSprite::create("1.png");
    Size size = pImg->getContentSize();
    pImg->setPosition(Vec2(size.width/2, size.height/2));
    this->addChild(pImg);
    
    //時間:1秒 移動距離:X方向に300 ジャンプの最高点:400 ジャンプの回数:3回
    auto action = JumpBy::create(1, Vec2(300, 0), 400, 3);
    
    //開始!
    pImg->runAction(action);