Lab

Cocos2d-x v3:移動のアニメーション

 Tag :  Published : 2014-6-9

Pocket

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

移動のアニメーション – 絶対値で指定(MoveTo)

スプライトが、1秒かけて画面の左端から右端へ移動します。

    //スプライトを作成
    Size visibleSize = Director::getInstance()->getVisibleSize();
    auto sprite = Sprite::create("1.png");
    sprite->setPosition(Vec2(sprite->getContentSize().width/2, visibleSize.height/2));
    addChild(sprite);
    
    //アニメーションを作成 MoveTo::create(時間, (X座標, Y座標));
    auto action = MoveTo::create(1, Vec2(visibleSize.width-sprite->getContentSize().width/2, visibleSize.height/2));
    
    //アニメーション開始
    sprite->runAction(action);
    

移動のアニメーション – 相対値で指定(MoveBy)

スプライトが、1秒かけて現在位置より横に+100、縦に+100移動します。

    //スプライトを作成
    Size visibleSize = Director::getInstance()->getVisibleSize();
    auto sprite = Sprite::create("1.png");
    sprite->setPosition(Vec2(visibleSize.width/2, visibleSize.height/2));
    addChild(sprite);
    
    //アニメーションを作成 MoveBy::create(時間, (X座標, Y座標));
    auto action = MoveBy::create(1, Vec2(100, 100));
    
    //アニメーション開始
    sprite->runAction(action);
    

pageTop