好吧,刚大致看了一下,active就是封装的这个方法吧应该
active要涉及到所有组件,但这个方法只涉及到渲染组件
刚试了你这个方法,不行,会很卡,效果不是特别明显,虽然是一样的,回头有时间可能还 测试下enabled,这个应该会好点,
enable 和 active 对渲染层来说区别不大
这里的卡顿可能在 JSB 上会更明显一点
升级到 1.3.0 之后卡顿会有所缓解
我现在用的就是1.31呀
看到你的帖子了,3000个节点对象,目前对于Creator是没办法承担的,只能改进逻辑。
嗯,昨晚看直播了,说了一个方法就是逐帧添加,挺好
我这边就在做贪吃蛇游戏,用的方法也是屏幕外active = false,但还是比较卡,问题在于:地图上有很多个点,每个点都要检测与各蛇头之间的距离(距离近就被蛇吃掉),即使屏幕外的active = false还是卡,请问这应该怎么解决?
还有蛇的移动我是用一个数组保存蛇头经过的位置,蛇的身体根据这个数组setPosition(),游戏只要稍微卡一下蛇就会“断
掉”,能大概说下蛇移动的方法吗? 谢谢
用碰撞模块啊,每一个生成的新的贪食蛇身体都是一个拥有碰撞模块的预制资源。这样就不用计算距离了
这个肯定不可行的~这么多碰撞模块会卡爆
不会,目前苹果自带浏览器上面随便跑
碰撞模块是静态触发的,理论上加载上万个碰撞模块也只有同时生成的时候会有延迟,其他时间都不占用系统资源。
问题是蛇不是在动态移动嘛?怎么个静态触发?
蛇的移动是头部+1 ,尾部-1,身体部分全部是静态的
身体部分显示出移动效果可以使用简单的动画来表现。
而且,碰撞模块的工作原理是,当有规定外目标进入碰撞区域后,发送消息。所以说,在碰撞模块被触发前,碰撞模块都是在以静态的方式等待触发。
含泪问下,那这亲的身蛇怎么办呢

以你这幅图为例,所有节点都是包括红和黄两种颜色的交错变换,你只需要让蛇身节点这两种颜色不停变换,头+尾-,自然就形成了移动的效果了
所以问题变成,计算位置和切换颜色,哪个更耗性能
必然是计算位置更耗性能,切换颜色的实现非常简单,首选做成动画,次选做成两张图片叠加,按时间隐藏和显示上层图片,无论是动画还是图片切换,效率都高于计算位置后进行移动。
你的意思,每帧计算位置,改成每帧头加1身体减一,然后换十几条蛇的皮肤?全身换图片,和全身改变坐标,真的是换图消耗小很多?
