关于抖音上的那种推石头的消消乐游戏,有大佬有什么好的实现思路吗

我看到两个,但是那两个效果都不太好

将力加到盾牌上晒

我之前写的一个demo就是盾牌有力人也有力,盾牌推石头,人推盾牌

石头就是普通的 主要靠盾牌的力来拉扯 这样就简单了 比如 人10N 盾牌10n就不动 盾牌20n人就被压制了 …

好几个都差强人意,对于石头将人向后推的效果实现都很差,基本上都是不管石头有多少,人都在缓慢后退,但实际上石头少了以后人应该前进啊

判断盾牌前方有多少石头改变盾牌的力?

可以这样…

但感觉多少会有点不自然,还有其他思路吗大佬

线性的力应该还好 要去调

盾牌做成静态刚体,在盾牌前方上中下加三根射线检测与前面石头的距离,如果很近就后退,存在一定距离就前进

image

1赞

好的,那那个性能优化有没有什么思路,我大概二三百个刚体在手机上运行就会出现运行速度缓慢,但是这个项目老板的要求是最多可以有六个这样的板块在屏幕上一起运行,我觉得这样不优化会直接卡死的吧

谢谢大佬,我了解了,那那个性能的优化有没有什么好的办法,刚体太多就会卡,但老板的按老板的要求,刚体又少不了

碰撞体全用圆形,开启自动睡眠,减少物理迭代次数。不了解可以看cocos文档

300块的时候frame time 就来到了6左右,要是一次性生成400往上的石头,开局就会卡一会才能变得稍微流畅,这还是电脑上流畅,手机上基本运行还是缓慢

分帧生成啊孩子,你一上来全生成了谁受得了

然后我就改成了不是一次性生成,每0.1秒生成100个,运行6次,加载的时候不会卡顿了,生成的时候由于石头太多互相挤压,导致运行再次变得卡顿,等待一段时间等他趋于平静基本不动的时候,那个frame time也有将近20 :sob:

就是因为太多挤压在一起物理才会卡,别靠挤的,检测有没有石头碰到盾牌就行

刚开始生成的时候怎么让石头和石头之间不互相挤压?难道刚开始把石头的分组换成互相不碰撞的?生成以后再换成碰撞的?

多搞几个生成的位置错开啊,肯定不能在一个点,一帧生成一个然后换下一个位置生成,不卡的
image

那个frame time不用管吗。换到手机上会不会运行缓慢呀