auto 変数 = MoveTo::create( 時間 , 《Vec2》);MoveToは、引数にVec2で指定した地点まで、一定時間をかけて移動します。例えば、create(10, Vec2(0, 0))とすれば、ゼロ地点まで10秒かけて移動するアニメーションが作れます。
auto 変数 = MoveBy::Create( 時間 , 《Vec2》);こちらは、現在地点から指定した距離だけ離れた場所に移動するためのものです。Vec2では、今の場所からどれだけ離れたところか、を値として指定します。例えば、create(10, Vec2(100, 100))とすると、現在地点から横に100、上に100ドット離れた場所まで10秒かけて移動するアニメーションが作られます。
《Sprite》->runAction(《Action》);作成したアクションのインスタンスは、そのままでは動きません。runActionを実行して、初めてアニメーションが動きます。MoveTo/MoveByに限らず、Actionのサブクラスは全てこのrunActionで実行します。※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
#pragma execution_character_set("utf-8")
#include "HelloWorldScene.h"
USING_NS_CC;
Scene* HelloWorld::createScene()
{
auto scene = Scene::create();
auto layer = HelloWorld::create();
scene->addChild(layer);
return scene;
}
bool HelloWorld::init()
{
if (!Layer::init())
{
return false;
}
Size visibleSize = Director::getInstance()->getVisibleSize();
Vec2 origin = Director::getInstance()->getVisibleOrigin();
Director::getInstance()->setDisplayStats(false); // stats OFF
auto sprite = Sprite::create("character.png");
sprite->setAnchorPoint(Vec2(0.5, 0.5));
sprite->setPosition(origin.x + 100,
origin.y + visibleSize.height / 2);
this->addChild(sprite, 1);
auto moveto = MoveTo::create(10, Vec2(sprite->getPosition().x + 300,
sprite->getPosition().y));
sprite->runAction(moveto);
return true;
}
| << 前へ | 次へ >> |