动画间的碰撞

动画数据结构:

模块信息:clip[][]

帧信息:frame[][]

动画帧信息:ani[][]

画模块: draw(clip[id],x,y)

画帧:

for:

draw(frame[frame index],fx+cx,fy+cy)

end for

画动画:

draw(ani[frame index],ax,ay)

 

如果要动画碰撞检测,最简单的办法就是动画之间每个模块之间做检测,如果碰撞了马上返回,很显然,这样做效率是多么的低下:如果碰撞的2个模块在最后,要比较到最后才能出结果,而且很多模块相互覆盖重叠使效率大大降低。

像上篇文章一样,做一些碰撞模块,添加到帧里面,这些模块根本就不画,只是用来做碰撞检测用的,用一些大的模块代替许多小的模块。比如身体头等这些部位,虽然模块却很多,但其实碰撞检测用一个矩形就可以了。还可以把这些模块分析组合,作成AABB盒子,来做碰撞检测,这样就可一大大提高效率。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值