Unity动画幅度太大怎么办

已知_animator.applyRootMotion ==true;的时候,动画位移也会算在位移里面。

但有些时候位移动作太大,这时候就需要调整了。

调整办法如下:

cs 复制代码
  /// <summary>
  /// 自定义根运动的核心回调函数
  /// </summary>
  void OnAnimatorMove()
  {
      var animator = AIBasicBehavior.Animator;
      // 1. 获取动画计算出的根运动增量(位移+旋转)
      Vector3 deltaPosition = animator.deltaPosition; // 本帧根运动的位移增量(世界坐标系)
      Quaternion deltaRotation = animator.deltaRotation; // 本帧根运动的旋转增量

      // 2. 缩放位移(仅缩放位移,旋转保持不变)
      deltaPosition *= 0.55f;

      // 关键修复:指定Translate使用世界坐标系(Space.World),匹配deltaPosition的坐标系
      transform.Translate(deltaPosition, Space.World);
      transform.rotation *= deltaRotation;
  }
相关推荐
新的瑞拉公主5 小时前
Unity游戏发布微信小游戏:从构建到提审
unity·webgl·微信小游戏·开放数据域
狂人开飞机21 小时前
14、游戏手感与视觉打磨
游戏·游戏引擎·godot
狂人开飞机1 天前
15、音频系统
游戏引擎·godot
狂人开飞机1 天前
16、粒子线条与视觉特效
游戏引擎·godot
心前阳光2 天前
Unity发布PC软件图标不能改变
unity·游戏引擎
an86950012 天前
unity如何在visual studio中打断点debug
unity·游戏引擎·visual studio
xcLeigh2 天前
Unity基础:使用Transform控制物体移动——Translate与position详解
unity·游戏引擎
FairGuard手游加固2 天前
Unity小游戏加密:global-metadata.dat与AssetBundle保护
游戏·unity·游戏引擎
狂人开飞机2 天前
11、UI系统
游戏引擎·godot
真鬼1232 天前
【Unity AI】Untiy链接cursor与MCP
unity·游戏引擎