(M)unity跳跃动画的设置 blend tree

跳跃动画的添加

1.创建animation,不同的阶段完成不同的创建,依此添加

在这里插入图片描述
2.在animator中创建混合树

**混合树**允许通过不同程度合并多个动画来使动画平滑混合。每个运动对最终效果的影响由一个_混合参数_控制,该参数只是与 Animator Controller 相关联的数字动画参数之一。为了使混合后的运动合理,要混合的运动必须具有相似的性质和时机。混合树是动画状态机中的一种特殊状态类型。

在这里插入图片描述
3.双击进入blend tree

Inspector__ 中的第一个选项是 Blend Type。此下拉选单用于选择不同混合类型之一;这些类型可以根据一个或两个参数进行混合。1D 混合根据单个参数来混合子运动。

由于jump只对一个混合参数,y方向的速度变化进行了判断,选择1D

添加混合参数velocityY对纵向速度进行检测,可在play中看到y方向速度时一个14->0->-14左右的值的变化

对应不同的阶段 估摸着完成jump前四步阈值的添加

在这里插入图片描述

4.添加代码链接,把人物的y速度加入到混合参数中

public void SetAnimation()
    {
        //anim.SetFloat("velocityX", Mathf.Abs(rb.velocity.x));
        anim.SetFloat("velocityY", rb.velocity.y);
        //anim.SetFloat("crouch", cr.isCrouch);
    }

5.创建跳跃动画的切换条件

public void SetAnimation()
    {
        //anim.SetFloat("velocityX", Mathf.Abs(rb.velocity.x));
        //anim.SetFloat("velocityY", rb.velocity.y);
        anim.SetBool("isGround", pc.isGround);
        //anim.SetFloat("crouch", cr.isCrouch);
    }

判定条件为是否离地,添加布尔参数,取消transition to self框,防止进入状态无法返回

ps.设置在任何状态下的转变,为可以在任何情况下只要挨着地面就能突然跳起来(攻击等其他情况可以被打断)

在这里插入图片描述
整个跳跃是一个离开地面->跳跃模式->到了地面->跳跃5(落地)动作->进入idle状态

在这里插入图片描述

在这里插入图片描述
5.解决落地直接跑步不下蹲缓冲做动作5

如果x方向速度大于0.1,退出动作
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值