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;
  }
相关推荐
mxwin12 小时前
Unity Shader 半透明物体为什么不能写入深度缓冲?
unity·游戏引擎·shader
晚枫歌F13 小时前
三层时间轮的实现
网络·unity·游戏引擎
咸鱼永不翻身15 小时前
Lua脚本事件检查工具
unity·lua·工具
leo__52016 小时前
单载波中继系统资源分配算法MATLAB仿真程序
算法·matlab·unity
努力长头发的程序猿18 小时前
Unity使用ScriptableObject序列化资源
unity·游戏引擎
mxwin18 小时前
Unity Shader 手写基于 PBR 的 URP Lit Shader 核心光照计算
unity·游戏引擎·shader
小贺儿开发18 小时前
Unity3D 智能云端数字标牌系统
unity·阿里云·人机交互·视频·oss·广告·互动
魔士于安19 小时前
Unity windows 同步 异步 打开文件文件夹工具
游戏·unity·游戏引擎·贴图·模型
笑虾19 小时前
cocos2d-x lua 加载 Cocos Studio 导出的 csb
游戏引擎·lua·cocos2d
魔士于安19 小时前
unity lowpoly 风格 城市 建筑 道路 交通标志
游戏·unity·游戏引擎·贴图·模型