bake 前端cocos2d_cocos2d-js中先bake后添加childnode好还是先添加childnode再bake更好?

官方说明中写道:

使用bake功能非常简单: 将需要bake的节点元素加入到一个cc.Layer或其子类(cc.LayerColor,cc.LayerGradient)对象中,然后调用该对象的bake函数就可以了。

但是我在项目的js-test文件夹中,BakeLayerTest.js中的BakeLayerTest1中,是先bake然后再addchild的:

ctor: function(){

this._super();

var winSize = cc.winSize;

var bakeItem = new cc.MenuItemFont("bake", this.onBake, this);

var unbakeItem = new cc.MenuItemFont("unbake", this.onUnbake, this);

var runActionItem = new cc.MenuItemFont("run action", this.onRunAction, this);

var menu = new cc.Menu(bakeItem, unbakeItem, runActionItem);

menu.alignItemsVertically();

menu.x = winSize.width - 70;

menu.y = winSize.height - 120;

this.addChild(menu, 10);

var rootLayer = new cc.Layer();

rootLayer.setPosition(20,20);

this.addChild(rootLayer);

var bakeLayer = new cc.Layer();

bakeLayer.bake();

bakeLayer.setRotation(30);

rootLayer.addChild(bakeLayer);

for(var i = 0; i < 9; i++){

var sprite1 = new cc.Sprite(s_pathGrossini);

if (i % 2 === 0) {

sprite1.setPosition(90 + i * 80, winSize.height / 2 - 50);

} else {

sprite1.setPosition(90 + i * 80, winSize.height / 2 + 50);

}

if(i === 4)

this._actionSprite = sprite1;

sprite1.rotation = 360 * Math.random();

bakeLayer.addChild(sprite1);

}

this._bakeLayer = bakeLayer;

bakeLayer.runAction(cc.sequence(cc.moveBy(2, cc.p(100,100)), cc.moveBy(2, cc.p(-100,-100))));

},

使用哪种方式会更好呢?他们之间的差别是什么?又或者两者没有啥差别,除了顺序。

刚刚用(new Date()).getTime()输出了下,先add再bake,先bake再add之间都说1毫秒或者2毫秒之间摆动……没啥差别,我真是无语了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值