Unity ARPG战斗系统 _ RootMotion相关知识点

1.作用 : 避免动画播放与实际位移产生偏差,从而避免"滑步"现象。

2.基本原理 : Root Motion通过相对位移和转角来移动游戏角色,而不是像动画文件会直接修改每一帧里对象的坐标值和角度值。

3.OnAnimation( ) : 是将Root Motion控制权交给开发者,通过脚本来控制(关于位移相关控制)。

private void OnAnimationMove(){
    //可以通过这行代码实现勾选Root Motion相同的效果
    transfrom.position += animator.deltaPosition;
}

4.Generic中的Root Motion

        在通用骨骼中的Root Motion指的是把动画中的根节点上的绝对坐标和绝对位置转化为游戏对象的相对位移与相对转角。

注:在设置时选择Generic(通用),并且Root Node选择模型自带的根节点即可。

5.Root Motion的旋转与位移

注:  1.旋转特指在y轴的旋转

       2.Bake IntoPose表示是否需要动画驱动游戏对象(使用根动画),如果需要就不勾选。

       3.loop match表示是否可以启用Bake In Pose ,一般绿色代表可以勾选,红色相反。

       4.Offest表示旋转与位移的偏移量,可以用来修正动画带来的实际移动偏差。

       5.Based Upon一般选择Original(美术制作时设置的原点)即可。

6.Humanoid中的Root Motion

        人形骨骼通过计算一个模型重心(Body Transfrom),然后再计算出投影地面的根位置(Root Transfrom),然后根据根位置上的绝对坐标和绝对位置转化为游戏对象的相对位移与相对转角。

注 :  1.一般Y的Position的Based Upon可以使用Feet,其余依旧Original。

        2.Avatar是Unity提供的一套替身系统,用来实现动作复用,通过固定肌肉来代替变化的骨骼,

           因此使用Avatar的人形动画都没有具体的骨骼信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海海不瞌睡(捏捏王子)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值