[Cocos2d-x]CCSpriteBatchNode的使用

文档:

http://cocos2d.cocoachina.com/document/index/class?url=dd/d95/classcocos2d_1_1_c_c_sprite_batch_node.html

简单描述:

使用CCSpriteBatchNode可以提供程序的效率。因为它使用同一个纹理渲染多个精灵,在Open GL调用draw方法时,只需一次渲染就可以完成一批精灵的渲染。

使用场景:

当同一层需要很多相同纹理创建一堆精灵时,考虑使用CCSpriteBatchNode,从而提高程序效率。可以把多个样式放到一张图中,通过显示不同的区域达到显示具体纹理区域的效果

(没错,使用CCSprite也能完成需求。是使用CCSpriteBatchNode还是使用CCSprite,只是一个职业素养或者解决方案的选择而已)

注意:

这一批精灵使用同一纹理,并且加入到同一层中。

EX:

    //使用图片创建CCSpriteBatchNode对象
    CCSpriteBatchNode* batchNode = CCSpriteBatchNode::create("Icon-114.png", 10);
    addChild(batchNode);
    
    //使用CCSpriteBatchNode的纹理创建精灵
    m_pBody = CCSprite::createWithTexture(batchNode->getTexture());
    //把精灵添加到CCSpriteBatchNode层中
    batchNode->addChild(m_pBody);

  

人生就是一局不能Again的DOTA
原文地址:https://www.cnblogs.com/hellenism/p/3474226.html