我定义了一个一次性定时器,0.1秒后执行一个函数,这个函数是添加很多个节点的操作。 另一个定时器其实是做一个动画,不停地改变某个节点的图片。
可是当添加很多节点的这个函数操作在执行时, 另一个执行动画的定时器就不会执行了,等前面一个函数操作完了 才会接着执行动画定时器。。
请问这个要怎么解决呀?
想在添加多个节点的时候做一个load动画,等节点添加完了再开始游戏这样。。
我定义了一个一次性定时器,0.1秒后执行一个函数,这个函数是添加很多个节点的操作。 另一个定时器其实是做一个动画,不停地改变某个节点的图片。
可是当添加很多节点的这个函数操作在执行时, 另一个执行动画的定时器就不会执行了,等前面一个函数操作完了 才会接着执行动画定时器。。
请问这个要怎么解决呀?
想在添加多个节点的时候做一个load动画,等节点添加完了再开始游戏这样。。
同时添加多个节点占用很多资源,建议分帧加载,看看这个https://forum.cocos.com/t/topic/72042
额。。 看了下帖子内容和底下的评论 没有看到分帧加载的相关内容诶。。 这是讲微信小程序怎么显示排行榜数据的吧?
这种做法听起来就感觉不可靠,可以放代码上来看下你需要的是什么效果
js 是单线程执行的.不存在同时执行
你可以分帧执行 添加节点 的操作. 这样loading 就不会阻塞了.
eg: 使用 组件 的 update 函数执行.
spawnItem(){
this._spwnIndex = 0;
this._spawnning = true;
},
_spawnItem(){
if (this._spwnIndex < 100){
//生成节点
}else{
this._spawnning = false;
}
this._spawnIndex ++;
},
update(dt) {
if (this._spawnning){
this._spawnItem();
return;
}
}
嗯嗯 我尝试了下可以了 谢谢~
好的, 我看看
就是代码中要创建好多个子节点,需要花费一定的时间,就想在创建的时候做一个加载的动画, 可是我发现在创建节点的时候动画并不能执行,是卡住的。。