我在Cocos2d-x 3.0中看到了对新的“自动批处理”功能的引用,甚至看到他们不再推荐使用SpriteBatchNodes的地方。那么如何在不使用BatchNodes的情况下批量绘制调用?
我在文档中找不到任何内容,但对此功能的引用最为模糊。 - https://docs.google.com/document/d/17zjC55vbP_PYTftTZEuvqXuMb9PbYNxRFu0EGTULPK8/edit#heading=h.3ssqg87hovgw
我试过简单地摆脱我的SpriteBatchNode并使用文件创建我的精灵,但是每个精灵的绘制调用次数增加了大约1个。)
答案 0 :(得分:1)
我想我已经解决了这个问题,而且非常简单。我刚刚将所有SpriteBatchNodes更改为节点并使用
预装了我的地图集SpriteFrameCache* spriteFrameCache = SpriteFrameCache::sharedSpriteFrameCache();
spriteFrameCache->addSpriteFramesWithFile("spritesheets/xxx.plist");
与SpriteBatchNode相比,绘制调用的数量没有变化。
这种新架构比SpriteBatchNode更灵活。例如,如果您这样做,则可以正确批量调用 节点 - >节点 - >雪碧 你永远不会做的地方 SpriteBatchNode - >节点 - >雪碧 因为SpriteBatchNode只能将Sprite作为子项。