Unity如何实现磁铁效果?(比如跑酷游戏中,获得磁铁道具后,自动吸附附近金币的效果。)

获得磁铁效果后,主要流程可以分为3步:

首先判断金币是否进入磁铁有效范围(圆半径,距离,矩形,collider 触发器等方式都可以)

接着可以使用差值运算方法,Lerp方法或ITween等插件或者类似方法对金币做一个缓动效果吸附的动画,

最后判断动画到达目标点后(碰撞器,触发器,计时等)进行销毁加分等处理即可。


下面以使用触发器为例:

使用OnTriggerEnter  为角色Player加一个额外的空物体为其子物体,并赋予一个比较大的球形Collider,勾选IsTrigger , OnTriggerEnter()脚本 判断是否有 Coin进入, 获取进入的Coin的脚本,传递其标志位为Ture,可以朝Player运动了。为每个Coin金币 绑定一个脚本,以及一个Collider,脚本中设置标志位,以及Vector3.Lerp()等移动动作

你可能感兴趣的:(unity,面试问答)