91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用CCSpriteBatchNode實現動畫效果

發布時間:2020-08-03 11:35:24 來源:網絡 閱讀:3485 作者:杜甲同學 欄目:游戲開發

使用CCSpriteBatchNode實現動畫效果



//每當屏幕繪制一個紋理的時候,就要經過三個工作:準備渲染、渲染圖形和渲染后的清除。這些工作產生了渲染一個紋理所固有的開銷,所以要讓硬件知道需要渲染的這一組精靈或動作幀,使用的是同一個紋理。這樣,圖形硬件就會為這組精靈只進行一次準備、渲染、和清除工作了。使用CCSpriteBatchNode就可以做到這一點。

//CCSpriteBatchNode的工作原理如下:

//1、創建一個CCSpriteBatchNode對象,通過傳遞一個包含所有精靈圖片的紋理圖冊的名字作為參數,并把它加入到當前場景中。

//2、接下來,從紋理圖冊中創建的任何精靈,應該把它當作CCSpriteBatchNode的一個孩子加進去。只要精靈包含在紋理圖冊中,那么就沒問題,否則會出錯。

//3CCSpriteBatchNode可以智能地遍歷它所有孩子結點,并通過一次渲染工作來渲染這些孩子,而不是每個精靈都進行一次渲染,這樣渲染速度就會更快了



我們在boolHelloWorld::init()添加如下代碼:

if ( !CCLayer::init() )
    {
        return false;
    }
                       
                       
                       
    CCAnimation* animation = CCAnimation::create();
                       
                       
    CCSpriteBatchNode* node = CCSpriteBatchNode::create("grossini.png");
    this->addChild(node);
                       
    CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("grossini.plist");
                       
    for (int i = 1; i < 15; i++)
    {
        CCString* str = CCString::createWithFormat("grossini_dance_%02d.png",i);
        const char* ch = str->getCString();
        CCSpriteFrameCache* cache = CCSpriteFrameCache::sharedSpriteFrameCache();
        CCSpriteFrame* frame = cache->spriteFrameByName(ch);
        animation->addSpriteFrame(frame);
    }
                       
    animation->setDelayPerUnit(0.3f);
    CCAnimate* animate = CCAnimate::create(animation);
    CCSpriteFrameCache* cache = CCSpriteFrameCache::sharedSpriteFrameCache();
                       
    CCSprite* sprite = CCSprite::createWithSpriteFrame(cache->spriteFrameByName("grossini_dance_01.png"));
    sprite->setPosition(ccp(100, 100));
                       
    node->addChild(sprite);
                       
    sprite->runAction(CCRepeatForever::create(animate));


代碼下載例子:Hi,推薦文件給你 "動畫例子4.zip" http://vdisk.weibo.com/s/Hw4G7

http://pan.baidu.com/share/link?shareid=260459325&uk=3189484501





向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

仁怀市| 天全县| 曲麻莱县| 常德市| 禹城市| 理塘县| 通海县| 阳春市| 呼伦贝尔市| 阜宁县| 正安县| 芜湖市| 汤阴县| 邢台县| 密云县| 万州区| 铜梁县| 南岸区| 陇南市| 阿城市| 子长县| 威信县| 灵川县| 永城市| 崇文区| 连南| 和田市| 保亭| 如皋市| 香格里拉县| 获嘉县| 南华县| 松原市| 西林县| 泰来县| 凤山县| 环江| 平乡县| 岱山县| 吴川市| 宽城|