배경이미지 스크롤하기



h++)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#ifndef test250_hpp
#define test250_hpp
 
#include "cocos2d.h"
 
USING_NS_CC;
 
class Test250 : public cocos2d::Layer
{
public:
    static cocos2d::Scene* createScene();
    
    virtual bool init();
    
    // implement the "static create()" method manually
    CREATE_FUNC(Test250);
   
 
    void initBG();   //배경
};
 
#endif /* test250_hpp */
 
cs



c++)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include "test250.hpp"
 
USING_NS_CC;
 
Scene* Test250::createScene()
{
    auto scene = Scene::create();
    
    auto layer = Test250::create();
    scene->addChild(layer);
    
    
    return scene;
}
 
 
bool Test250::init()
{
    if ( !Layer::init())
    {
        return false;
    }
    
    
    initBG();
    
    return true;
}
 
 
//배경그리기
void Test250::initBG(){
    //배경이미지 위치
    auto sprite = Sprite::create("background.jpg");
    sprite->setAnchorPoint(Point(0,0.5));
    this->addChild(sprite);
    
 
    //이미지의 가로크기인 2500만큼 왼쪽으로 이동한다
    auto action0 = MoveBy::create(10.0, Point(-2500,0));
    //이미지의 오른쪽 끝에 위치하면 원래 위치로 이동한다
    auto action1 = Place::create(Point(0,0.5));
    //2개의 액션을 묶는다
    auto action2 = Sequence::create(action0, action1, NULL);
    //묶은 액션을 반복한다
    auto action3 = RepeatForever::create(action2);
    //스프라이트 객체에 애니메이션 적용한다
    sprite->runAction(action3);
}
cs



결과

배경이미지가 왼쪽으로 스크롤된다



+ Recent posts