黑魂复刻游戏的玩家控制器(降落、落地检测)——Unity随手记(2021.3.30)

今天实现的内容:

加入降落动画

降落发生在跳跃之后,所以降落动画要紧接着跳跃动画播放,动画机如下。
在这里插入图片描述
这两条Transition都has exit time,并且jump到fall的优先级高于jump到ground,因为目前为止这两个转换都没有条件。
在这里插入图片描述
在图示位置调整优先级。

落地检测的实现及相关动画运用

要实现落地检测,需要使用Physics.Overlap里的东西,使用Physics.Overlap可以找到某个形状范围内有重合的所有碰撞体。比如我们要用到的Physics.OverlapCapsule就是在一个给定的胶囊体内得到所有与胶囊体有重合的特定layer的碰撞体,Overlap只能得到有哪些碰撞体重合,而不知道其它信息(先后,远近等等)。
在这里插入图片描述
我们新建落地检测器脚本OnGroundSensor,挂载到PlayerController游戏对象的子物体sensor下,sensor对象将专门由于各种检测器的挂载。
在这里插入图片描述
OnGroundSensor代码如下。通过SendMessage来告诉PlayerController当前是否正在地面。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

// 落地检测器
public class OnGroundSensor : MonoBehaviour
{
   
    // 用于引用PlayerController游戏对象上的CapsuleCollider
    public CapsuleCollider capCol
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值