工作记录2023/8/8

2023/8/8

重叠子弹,伤害数字的处理

一帧之内进行多次普工,会导致有大量的子弹重叠在一起,极大的浪费性能,而且子弹命中敌人时,产生的伤害数字也会叠加在一起,由于伤害没有波动,导致伤害数字都是一样的,根本没必要生成那么多。

优化方案:对于伤害数字,每个伤害数字的产生是通过一个事件执行的,这个事件监听位于表现单元中,所以在表现单元中缓存一个储存了生成伤害数字数据的结构体,产生伤害数字的事件不再直接产生伤害而是给结构体赋值,结构体会在tick时产生伤害数字,无论这一帧收到了多少个事件,都只会储存一个伤害最高的数字,便这样就成功的将伤害数字限制在了一帧一个 。

对于子弹,每一下平a可能有多次发射子弹的行为,每个行为可能会发射多个子弹,目前只对子弹的多次发射行为进行了限制,在技能状态机进行tick的时候,如果一帧内多次进行tick发射行为,则后续的行为将不会产生真正的gameobject,但是逻辑单元和表现单元还是正常生成,只是不会在屏幕上生成相应的图形。这样便可以有效的避免生成多个重叠的子弹,白白浪费性能。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值