欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

coco2d-x實現(xiàn)Loading界面預(yù)加載資源-創(chuàng)新互聯(lián)

首先我們定義2個c++文件,一個是loadingScene.h, loadingScene.cpp

創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供漯河網(wǎng)站建設(shè)、漯河做網(wǎng)站、漯河網(wǎng)站設(shè)計、漯河網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、漯河企業(yè)網(wǎng)站模板建站服務(wù),十余年漯河做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

首先我們在.h里面我們定義我們的辦法

#include"cocos2d.h"

using namespace cocos2d;

class loadingScene:public Layer

{

public:

int nuberOfLoadedRes;//記錄當(dāng)前的進度

CREATE_FUNC(loadingScene);

bool init();

static Scene *createScene();

void loadingResource();//加載資源

void loadingCallBack(Texture2D*obj);//加載資源的回調(diào)

void update(float t);

};

定義好了.H,然后我們?nèi)崿F(xiàn)這些方法

在.CPP里面。因為我的資源是從cocostudio里面制作的

所以我們這里就實現(xiàn)怎么把cocostudio制作的東西拿到cocos2d里怎么來用他

#include"loadingScene.h

#include"cocostudio/cocostudio.h"

#include"SimpleAudioEngie.h"  //這里是定義聲音的頭文件

using namespace CocosDenshion //這里是定義聲音的頭文件

using namespace cocostudio;

Scene *loadingScene::createScene()

{

  auto scene=Scene::create();

  auto layer=loadingScene::create();

  scene->addChild(layer);

  return scene;

}

bool loadingScene::init()

{

if(!Layer::init())

{

return false;

}

//顯示場景編輯器做好的場景

auto node=SceneReader::getInstance()->createNodeWithSceneFile("

publish/LoadingScene.json //要加載場景

")

node->setTag(1000);

this->addChild(node);

//先設(shè)置進度條

Node *nodeScene=this->getChildByTag(1000);//場景根節(jié)點

comRender *render=(comRender*)(nodeScene->getChildByTag(10003))->getComponent("GUIComponent"));

Widget *widget=(cocos2d::ui::Widget*)(render->getNode());//得到UI層的根節(jié)點

loading *progressBar=(loadingBar*)(widget->getChildByTag(7));

progressBar->setPercent(0);

下面我們需要去實現(xiàn)在.H里面的加載資源的方法 ,然后我們在init()方法里面實現(xiàn)一下

//實現(xiàn)資源的加載

this->numberOfLoadedRes=0;//先初始化我們要加載的資源為0

loadingScene::LoadingResource();

this->scheduleUpdate();

return true;

}

void  LoadingScene::LoadingResource()

{

 SimpleAudioEngine::getInstance()->preloadBackgroundMusic(FileUtils::getInstance->

fullPathForFilenmae("需要加入的游戲音樂的名字".c_str());

numberOfLoadedRes++;

//加載所有的圖片幀

spriteFrameCache::getInstance()->addSpriteFramesWithFile("加入plist文件");

numberOfLoadedRes++;

//  紋理緩存--所有的圖片都可以放到紋理緩存中

Director::getInstance()->getTextureCache()->addImageAsync("需要加入的圖片",

CC_CALLBACK_1(loadingScene::loadingCallBack,this));

}

//加載資源的回調(diào)

void loadingScene::LoadingCallBack(Texture2D * obj)

{

numberOfLoadedRes++

這里我們用log打出我們加載的資源有沒有成功

log("資源加載:%d",numberOfLoadedRes);

}

這里我們更新下我們的進度條

void loadingScene::update(float t)

{

float percent=(float)numberOfLoadedRes/(有多少資源)*100;

Node *nodeScene=this->getChildByTag(1000);//場景的根節(jié)點

ComRender * render=(ComRender*)(nodeScene->getChildByTag(10003)->

        getComponent("GUIComponent"));

Widget *widget=(cocos2d::ui::Widget*)(render->getNode());

loadingBar *progressBar=(LoadingBar*)(widget->getChildByTag(7));

progressBar->setPercent(percent);

if(numberOfLoadedRes==(有多少資源))

{

 這里就寫你下載資源之后是跳轉(zhuǎn)場景呢還是干什么

}

}

忘記了告訴大家,上面那些Tag里面的數(shù)字,要是代碼里面沒有setTag的,那些Tag都cocostudio里面對象物體的標(biāo)簽 。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

分享標(biāo)題:coco2d-x實現(xiàn)Loading界面預(yù)加載資源-創(chuàng)新互聯(lián)
路徑分享:http://chinadenli.net/article24/dedgce.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司微信公眾號網(wǎng)站建設(shè)靜態(tài)網(wǎng)站App開發(fā)搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管