大量的计算active 会对性能影响很大么?

用碰撞模块啊,每一个生成的新的贪食蛇身体都是一个拥有碰撞模块的预制资源。这样就不用计算距离了

这个肯定不可行的~这么多碰撞模块会卡爆

不会,目前苹果自带浏览器上面随便跑

碰撞模块是静态触发的,理论上加载上万个碰撞模块也只有同时生成的时候会有延迟,其他时间都不占用系统资源。

问题是蛇不是在动态移动嘛?怎么个静态触发?

蛇的移动是头部+1 ,尾部-1,身体部分全部是静态的
身体部分显示出移动效果可以使用简单的动画来表现。

而且,碰撞模块的工作原理是,当有规定外目标进入碰撞区域后,发送消息。所以说,在碰撞模块被触发前,碰撞模块都是在以静态的方式等待触发。

含泪问下,那这亲的身蛇怎么办呢

以你这幅图为例,所有节点都是包括红和黄两种颜色的交错变换,你只需要让蛇身节点这两种颜色不停变换,头+尾-,自然就形成了移动的效果了

所以问题变成,计算位置和切换颜色,哪个更耗性能

必然是计算位置更耗性能,切换颜色的实现非常简单,首选做成动画,次选做成两张图片叠加,按时间隐藏和显示上层图片,无论是动画还是图片切换,效率都高于计算位置后进行移动。

你的意思,每帧计算位置,改成每帧头加1身体减一,然后换十几条蛇的皮肤?全身换图片,和全身改变坐标,真的是换图消耗小很多?

理论归理论,热切期待各大神出一个简单demo,大家实测便知。
@aking5287 @313008430

噗,多从学软件到直接写到直接上项目,是从10月10号开始的,到现在软件我都还不是特别熟呢,所以我还是一脸懵逼的

没所谓啊,把你的demo传上来。各大神有兴趣顺便帮你改改,说不定收获很大。要知道,别人有思路未必真实现过,想要实现又碍于没有你这个demo相关的环境,重头再弄邮费时间。。

你这想法做格子游戏才行,蛇得一格一格的移,但要形成逼真的连续的移动效果,不行

我觉得也是:7:

http://layaair.ldc.layabox.com/demo/h5/demo.html?PerformanceTest_Cartoon2
别人用layaair做的html5游戏那么多精灵都不卡,你觉得creator会卡么,太不信任creator了:unamused:

你用这个到微信浏览器上面跑试下,嘎嘎

我跑了,25fps

可以的,微信真不是一般的坑