cocos2dx 自定義動畫

2022-03-16 01:58:00 字數 1704 閱讀 3940

bool

helloworld::init()

//// 新增4個精靈, 每個精靈用來標示一幀

//ccsprite * sp1= ccsprite::create("crop1.png");

//ccsprite * sp2= ccsprite::create("crop2.png");

//ccsprite * sp3= ccsprite::create("crop3.png");

//ccsprite * sp4= ccsprite::create("crop4.png");

ccsprite * sp1= ccsprite::create("

crop.png

", ccrectmake(0, 0, 100, 86

)); ccsprite * sp2= ccsprite::create("

crop.png

", ccrectmake(100, 0, 100, 86

)); ccsprite * sp3= ccsprite::create("

crop.png

", ccrectmake(200, 0, 100, 86

)); ccsprite * sp4= ccsprite::create("

crop.png

", ccrectmake(300, 0, 100, 86

));//

設定一樣的座標

sp1->setposition(ccp(100, 180

)); sp2->setposition(ccp(100, 180

)); sp3->setposition(ccp(100, 180

)); sp4->setposition(ccp(100, 180

));

//設定2-4幀不可見, 初始化時只顯示第一幀

sp2->setvisible(false

); sp3->setvisible(false

); sp4->setvisible(false

);

//新增到當前層中 tag 按照順序0~3

addchild(sp1,0,0

); addchild(sp2,

0,1);

addchild(sp3,

0,2);

addchild(sp4,

0,3);

//每0.5s呼叫一次myupdate(每0.5s切換一幀)

schedule(schedule_selector(helloworld::myupdate),0.5

);

return

true;}

void helloworld:: myupdate(float

dt)//

隱藏所有的精靈

for (int i = 0 ; i count(); i++)

//讓下一幀顯示出來

ccsprite *sp = (ccsprite*)array->objectatindex(currentframeindex);

sp->setvisible(true

);

}

.cpp

.h

class helloworld : public

cocos2d::cclayer

;

cocos2dx動畫Animation介紹

一 幀動畫 cpp ccanimation animation ccanimation create 從本地檔案 系統中載入檔案到ccspriteframe中區,然後新增到ccanimation中 for int i 1 i 15 i sprintf szimagefilename,images g...

cocos2dx動畫Animation介紹

一 幀動畫 你可以通過一系列檔案,像如下這樣,建立乙個動畫 01ccanimation animation ccanimation create 02 從本地檔案系統中載入檔案到ccspriteframe中區,然後新增到ccanimation中 03for inti 1 i 15 i 04 06sp...

Cocos2dx 《基礎》 幀動畫

幀動畫 a.spriteframe 精靈幀。精靈幀包含了對應紋理在大的紋理區域中的位置和大小,對應紋理是否經過旋轉和偏移。根據這些幾何資訊,可以從大的紋理中找到正確的紋理區域作 為精靈幀顯示的影象。使用紋理建立精靈幀 auto tex texturecache getinstance addimag...