什么是根运动及其工作原理?

2024-03-21

我正在阅读Unity 动画食谱书。我陷入了“根运动”主题。我现在能理解的是根运动允许游戏对象随着运动剪辑移动而无需编码。这取决于根节点。
但我无法想象/理解如何?或者像“烘烤姿势”这样的相关属性是什么..姿势是什么..?我在网上搜索发现有人在谈论它..但那里没有有用的教程!我尝试从统一文档中阅读有关该主题的内容,但这使情况变得更糟。https://docs.unity3d.com/Manual/RootMotion.html https://docs.unity3d.com/Manual/RootMotion.html

请帮助我提供示例/链接/重播


在花费更多时间搜索/观看视频/阅读其他书籍以了解一切之后。我会将我的答案放在这里,以便任何在理解这个主题时面临同样困难的人

跑步机与根部运动:有两种类型的动画:跑步机和根运动。跑步机意味着动画保持在原点,我们使用代码来移动该资产。根运动意味着运动直接内置到动画中,并且是动画而不是代码决定了物体移动的距离。

那你一定要看看这个视频当您导入角色和动画时,了解它在 Blender 以及稍后在 Unity 中的外观https://www.youtube.com/watch?v=d5z9dEnE4DE https://www.youtube.com/watch?v=d5z9dEnE4DE

根变换旋转:该选项捕获根节点的旋转并 将其应用于整个游戏对象。您可以将其设置为 Bake Into Pose 以禁用 根运动旋转。选择此选项后,旋转将被视为 动画的视觉效果并不会应用于游戏对象。你 对于每个不应该旋转角色的动画,应该将其设置为 true。你 可以将 Based Upon 选项设置为以下选项之一:

根变换位置 Y:此选项捕获垂直运动 根节点并将其应用于整个游戏对象。您可以将其设置为“烘焙” 摆出禁用 Y 轴根部运动的姿势。选择此选项后,Y 轴 运动将被视为动画的视觉效果,不会被应用 到游戏对象。您应该为每个“地面”动画将其设置为 true (除非是跳跃)。

根变换位置 XZ :此选项捕获水平 (XZ) 根节点的移动并将其应用于整个游戏对象。你可以设置一下 烘焙成姿势以禁用 X 轴和 Z 轴的根部运动。有了这个选项 选择后,水平运动将被视为动画的视觉效果,并且 不会应用于游戏对象。对于所有静止的,您应该将其设置为 true 动画(例如空闲)。

好的动画可以结合传统(跑步机)和根运动方式。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是根运动及其工作原理? 的相关文章

  • Unity2D - 如何在 2D 游戏中围绕圆移动和旋转游戏对象?

    我正在尝试围绕目标行星移动和旋转一些云 目前只是一个圆圈 我把动作搞定了 但旋转部分我真的很挣扎 我希望它按其在圆上的位置成比例旋转 但我一直试图猜测正确的数字 这是代码 public class CloudMovement MonoBeh
  • 从 Resources 子文件夹中获取文件名

    在我的资源文件夹中 我有一个图像子文件夹 我想从该文件夹中获取这些图像的所有文件名 尝试了几个Resources loadAll之后获取 name 但没有成功的方法 这是实现我在这里想做的事情的正确做法吗 没有内置 API 可以执行此操作
  • 即使速度非常低,物体也会立即移动到新位置

    我想将一个对象缓慢地从其原始位置移动到稍高的位置 但此代码会立即将对象移动到最高位置 即使我使用非常慢的速度 如 0 0001f 我在另一个代码中仅调用 LiftObj 1 次 并告诉它运行直到达到 liftOffset 这段代码有什么问题
  • 尝试 Azure 与 Unity 连接时出现“NotImplementedException”(c#)

    我使用的是Unity 2019 3 6f1 我创建了一个简单的 DLL 用于连接到 Azure 并上传文件 但是 当我调用此 DLL 来尝试连接到 Azure blob 存储时 我得到以下堆栈跟踪 NotImplementedExcepti
  • C#/Unity - 无法从异步方法调用 Unity 方法

    我正在使用Unity3D 这是我的异步方法 private void Receive IAsyncResult ar try IPEndPoint ipEndPoint null byte data udpClient EndReceive
  • Unity / RIDER:乘法运算的顺序效率低下?

    骑手 IDE 告诉我以下操作效率低下 transform Translate moveDirection speed Time smoothDeltaTime 并想将其重写为 transform Translate Time smoothD
  • 使用意图从 Unity 应用程序向 Android 应用程序发送数据

    我有两个独立的应用程序 AppA 使用 Android Studio 开发 和 AppB 使用 Unity 开发 AppA 将启动 AppB 这是一个游戏应用程序 用户玩完游戏 AppB 并点击退出按钮后 会将游戏记录 字符串数组 发送回A
  • 检测用户是否正在从另一个应用程序播放音乐

    我的游戏有游戏内配乐 如果用户通过 Android 或 iOS 上的媒体应用程序播放自己的音乐 我想暂停音乐 有没有一种方法可以足够有效地在 update 函数中运行 提前致谢 您可以检查音乐是否按照以下描述播放this https sta
  • Unity使用Invoke在另一个脚本上调用方法

    我有两个脚本 其中一个重新启动场景 另一个是倒计时器 而不是在第一个脚本中调用重新启动场景方法 但是 它没有重新启动 即使没有错误 我也不明白为什么 重新启动场景的第一个脚本 using UnityEngine using UnityEng
  • 从通用平面获取轴对齐坐标

    标题可能是错误的 因为我不知道足够的数学知识来实际用一个小句子描述我的问题 我有一个 3D 矢量闭环 我将其称为 3D 多边形 我需要对其执行仅 2D 操作 这将返回一个 不同的 2D 点集 我需要将这些新的 2D 点转换回 3D 我目前的
  • 2D 弹跳公式无法正常工作

    我是 Unity 的新手 我正在尝试创建一个弹跳球 所以我做了很多关于弹跳相关物理的研究 我找到了一个公式 Formula 2 V dot N N V 其中 V 是速度矢量 N 是球弹跳表面的法线 这是我的脚本 using UnityEng
  • 统一使用单例的最佳方法[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我想知道哪种是使用单例实例的正确方法 当我创建一个名为 Manager 的单例类并且它包含一个名为 value 的 int 变量并且我有另一个名
  • 如何通过脚本使Texture2D可读

    我想让用户能够解码从图库加载的 QR 图像 我找到了一个插件来探索图像并将其加载为texture2D 但是要解码该 QR 代码 Texture2D 必须是可读 可写的 我检查了该插件 对于 Android 它使用 jar 进行探索和加载内容
  • Total Blank Unity / Microsoft Store Build 未通过 WACK 测试

    我一直在努力为我的游戏取得成功统一 2018 2 1f1 and 视觉工作室 2017 15 8 0 尝试为 Windows 商店成功构建 打包 WACK 失败后所有 每个不同的配置 我尝试了完全空白默认Unity UWP平台应用程序 生成
  • 如何将字节数组转换为任何类型

    好的 我看到有人问如何将字节数组转换为int string Stream等等 答案各不相同 我个人还没有找到任何令人满意的答案 这里有一些我们想要将字节数组转换成的类型 UnityEngine Font可以吸收ttf data UnityE
  • 如何包装 UnityEngine.Debug.Log 但在单击时保留代码行

    我有这种代码 目的是包装UnityEngine Debug Log所以我也可以在生产中禁用它们 以便我可以稍后查找 过滤 using System public enum LogType DEBUG CRITICAL public clas
  • float.Parse 不再在 Unity 中工作 (C#)

    我有一个包含以下代码行的工作项目 public InputField mass float val float Parse mass text 非常简单 用户输入一定量的质量 然后将其从文本解析为浮动 几天前这工作得很好 我什至能够多次导出
  • 使用 GitHub 时防止将大文本文件添加到提交

    我们想要防止 非常大的文本文件 每个文件 gt 50MB 被提交到git代替git lfs 因为它们夸大了 git 历史 问题是 其中 99 大小差异的原因 这些是 YAML 文件 它们支持通过 Base64 编码进行二进制序列化 我们无法
  • Hololens-无法连接到设备

    我意识到这个问题在其他地方被问过 但答案似乎直接针对 Hololens 和 PC 之间的配对过程 这是我的问题的一部分 我在 Unity 中制作了一个应用程序并导出到 Visual Studio 当我尝试在 Hololens 上运行它时 出
  • 在速度和距离不一致和/或有噪声的向量之间平滑地进行调整

    我正在可视化一级方程式赛车中提供的 GPS 数据 并尝试以动画方式显示它们在路径上的位置 Formula 1 API 提供矢量坐标和时间戳 但时间戳各不相同 它们的更新时间大约在 100 到 400 毫秒之间 timestamp x y z

随机推荐

  • 我们可以使用 data.table 按组设置顺序吗?

    简单的问题 我想用data table setorder在我的 DT 上 但我不能按组执行此操作 是否可以 在此示例中 我订购了整个 DT DT data table a rep c C A D B E each 4 b sample 1
  • 在自定义格式化程序中访问 rowObejct

    在 jqgrid wikki 中 我读到 虽然使用 xml 数据类型 rowobject 将不是一个数组 在 json 中 我使用 rowobject 1 2 等获取了列值 但是如何使用 xml 数据类型来实现这一点 请提供使用 xml 数
  • 确定在哪个表视图中按下了单元格按钮?

    我有像测验这样的表格视图单元格 在每个单元格中我都有一个按钮 我如何识别按下了哪个单元格按钮 也许通过 IndexPath 这就是我将按钮连接到的方式 func tableView tableView UITableView cellFor
  • 带有 SDK 4.2 的 Xcode 始终启动 iPad 模拟器

    为什么 Xcode 在更新到 SDK 4 2 后总是在 iPad Simulator 而不是 iPhone 中运行我的应用程序 如果我选择 iPhone Simulator 作为活动可执行文件 它不会存储我的首选项 并在任何新的 构建和运行
  • 应用程序关闭后无法保持 Android 服务处于活动状态

    我正在尝试生成一个始终保持活动状态的服务 即使用户关闭应用程序也是如此 根据这些线程 当应用程序关闭时保持位置服务处于活动状态 https stackoverflow com questions 21441232 keep location
  • 如何判断在touchesBegan中哪个对象被触摸了?

    我知道这是一个非常常见的问题 但每个网站上的所有答案都不起作用 如果你还是不明白我的意思 那么也许这行代码会帮助你理解 void touchesBegan NSSet touches withEvent UIEvent event UITo
  • 有没有办法将 Google Sheets 工作簿中的值绘制到 TradingView pinescript 中?

    我正在尝试将 GoogleSheets 工作簿中计算的值绘制在交易视图图表上 我无法在 Tradingview 中进行相同的计算 因为这些值来自动态网页 所以我在 excel 中进行计算 并且想知道是否可以以某种方式将这些值发送到 Trad
  • PySpark 时间戳的毫秒数

    我试图获取两个时间戳列之间的差异 但毫秒消失了 如何纠正这个问题 from pyspark sql functions import unix timestamp timeFmt yyyy MM dd HH mm ss SSS data 1
  • 在 C# 中实现套接字侦听器的最佳方法

    我已经搜索过答案 但找不到类似的东西 我对 C 相当陌生 我需要使用 WinForms 在 C 中创建一个程序 它基本上有 2 个组件 UI 然后我需要一个永久侦听套接字 TCP 端口的进程 如果收到任何内容 那么我需要引发一个事件或类似的
  • 计算一年中第一周的星期一的最简单方法是什么

    我想过去一年并得到一个代表第一周第一个星期一的日期 so 如果一个传入2011 我会回来的2011 年 1 月 3 日 如果一个传入2010 我会回来的2010 年 1 月 4 日 private DateTime GetFirstMond
  • Images.xcassets 违反目标法则

    好吧 所以我正在为这个问题拔牙 我真诚地希望我犯了一个愚蠢的错误 涉及到一些深夜 简短的背景故事 我们正在构建一个需要品牌化的产品 因为多个客户将共享 90 相同的 UI 和代码 并使用一些配置选项来打开 关闭以及不同的颜色 字体和图像等
  • 当我第二次运行测试时,为什么在 Mongoose 中出现错误“无法覆盖编译后的模型”?

    我读过相关帖子 编译 Mongoose 后无法覆盖模型 https stackoverflow com questions 19051041 cannot overwrite model once compiled mongoose 问题是
  • 改变排序对象行为

    使用映射到 Linux 共享的驱动器时 文件名区分大小写 PowerShell 按预期处理此问题 但我想以类似于 C 语言环境中使用的排序顺序的方式对输出进行排序 这意味着按字符值从 U 0000 一直到 U 升序排序10FFFF 例如 0
  • HTML 标签的正则表达式 [重复]

    这个问题在这里已经有答案了 我有一个 HTML 页面 tr 类 我需要捕获这些标签之间的文本 我尝试过Regex i tr
  • Javascript:拖放图像标签

    我想知道如何使用 javascript 拖放图像标签 我知道 html5 每个元素都可以拖动 但我想让它在旧浏览器上工作 我已经使用javascript进行了拖放操作 除了在ie和firefox中 当鼠标按下时 它工作得很好 除非用户单击它
  • Flutter:为什么这个流构建器不起作用?

    所以 我刚刚开始从事一个 flutter 项目 对整个体验还很陌生 我刚刚通过创建几个更新 删除和添加文档的按钮 成功地将 firebase firestore 集成到我的项目中 但是 我还想添加一个 Streambuilder 以及在同一
  • Tkinter 按钮的突出显示对我不起作用

    根据已接受的答案这个帖子 https stackoverflow com a 53648642 7475225指某东西的用途 configure highlightbackground red 按钮上应该在按钮周围应用颜色 但是在测试中我无
  • AnalysisException:路径不存在:dbfs:/databricks/python/lib/python3.7/site-packages/sampleFolder/data;

    我将以下代码打包到 whl 文件中 from pkg resources import resource filename def path to model anomaly dir name str data path str filep
  • 在 NSDateComponents 中,如何知道是 AM 还是 PM?

    当我使用 NSDateComponents 时 我如何知道我将时间设置为 Am 或 Pm 还是24小时制 这是代码 NSDate morningEnd NSDate date NSDateComponents components1 gre
  • 什么是根运动及其工作原理?

    我正在阅读Unity 动画食谱书 我陷入了 根运动 主题 我现在能理解的是根运动允许游戏对象随着运动剪辑移动而无需编码 这取决于根节点 但我无法想象 理解如何 或者像 烘烤姿势 这样的相关属性是什么 姿势是什么 我在网上搜索发现有人在谈论它