unity, Root Motion






(引自:http://tieba.baidu.com/p/4323644080)
然后详细看了下这个文档:http://docs.unity3d.com/Manual/RootMotion.html
现在基本上明白了,下面记几个要点:
1,在3dmax里建模的时候必须包含一个根骨骼,所有的位移动画必须做在根骨骼上。
2,unity中进入fbx的Import Setting,选Animations属性页,创建Clips。
3,进入fbx的Import Settings,选里面的Rig属性页,为其中Root node选择根骨骼。
3,此时再重新进入Animations属性页,就可以看到每个clip的面板里都出现了Root Transform Rotation,Root Transform Position(Y),Root Transform (XZ)这些选项了。
4,接下来把fbx拖到场景里,在其Animator组件中把Apply Root Motion选上。
5,当然,还有为Animator组件的Controller添加Animation Controller及创建状态机节点之类的一些琐事,这里就不提了。
这样,动画在切换时就可以累积位移(而非复位)了。
关于Root Transform的说明:
1,Root Transform是物体质心在一个水平平面上的投影,至于此水平平面是哪个平面,取决于Based Upon的设置。
Root Transform可以直观地在clip面板下方的预览窗口中看到:

那个圆圈就是Root Transform的位置。
预览窗口中默认放的不是我们自己的fbx模型,而是这个小人儿,我们需要把自己的fbx模型拖到预览窗口中。
2,Bake Into Pose的理解:
可以理解为Root Transform是模型的根节点,而Pose是Root Transform的子节点。
如果我们不勾选Bake Into Pose,则Root Transform运动带动子节点Pose运动。
如果我们勾选了Bake Into Pose,则Root Transform中的动画将被转移到Pose中去,这样Root Transform就静止不动了,而只有Pose运动。
两者看上去动画效果一样,区别就在于Root Transform动与不动。
什么情况下需要Bake Into Pose,什么情况下不需要Bake Into Pose呢?
由于我们勾选了Apply Root Motion,所以Root Transform进入累积模式,切动画时下一个动画会在上一个动画结尾时Root Transform的位置开始播放(而不复位)。
但有时候我们会有这样的需求:希望切动画时,在XZ平面上位移累积,但在Y方向上位移不累积(复位)。
如果所有的Bake Into Pose都不勾选,则我们现在的效果是: 切动画时,XZ平面上和Y方向上位移都累积。
现在,只要将Root Transform Position(Y)的Bake Into Pose勾选,就能取消Y方向上的累积了。
原理很明显,因为Y方向上Root Transform不动了,所以定不会在Y方向上产生累积位移。
unity, Root Motion的更多相关文章
- Unity3D规则之Unity Root Motion / Bake into Pose 的问题
参考: http://ru.unity3d-docs.com/Documentation/Manual/Animator.html http://ru.unity3d-docs.com/Documen ...
- Root Motion深度解析[Unity]
http://blog.csdn.net/cubesky/article/details/39478207 在很多动画当中,模型的位置.角度往往会发生变化,我们需要决定是否将模型再动画中发生的这些变换 ...
- Unity学习疑问记录之Apply Root Motion
Should we control the character's position from the animation itself or from script. 如果我们勾选了Animator ...
- Unity3D 中 Generic 动画导入设置和 Root Motion 之间的关系
2条评论 Unity3D 的 Mecanim 动画系统可以直接复用 3DS MAX 中制作的动画文件中的位移,这个就是通过 applyRootMotion 来达成的,我们只需要在使用 Animator ...
- Apply Root Motion
Apply Root Motion 应用根动作: Should we control the character's position from the animation itself or fro ...
- Root Motion的脚本处理
一.Apply RootMotion的作用 Apply RootMotion:控制角色在场景中动画的运动.角色动画驱动角色运动,类似于在游戏中直接使用动画,提高了动画的使用效率. Root Motio ...
- 根运动 (Root Motion) – 工作原理
http://blog.csdn.net/myarrow/article/details/45505085 1. 基本概念 在Unity3D动画中,模型的位置.角度经常会发生变化,我们需要决定是否将模 ...
- 【Unity笔记】根骨骼动画/运动(Root Motion)
根骨骼动画:当动画中角色发生位移后,动作坐标原点跟随角色移动.例如一个向前跳跃的动画,如果在场景中重复该动画,能够看到角色一路往前跳跃,位置一直在前进.适用于有位移的放技能动作等. 非根骨骼动画:当动 ...
- UNITY更新到5后设置的动画无法播放了怎么办
点击对应的animator,将 apply root motion 这个选项的勾去掉就可以了,纠结了很久最后在UNITY官方论坛找到的答案
随机推荐
- crtmpserver配置文件详解
Configuration file配置文件 The configuration file is actually a lua script which must contain an object ...
- 【资料】wod属性
各个属性的影响力量 st 影响近战远程伤害和体力体质 co 影响体力(比力量的影响大)智力 in 影响法力和魔法防御灵巧 dx 影响近战远程命中和近战躲闪魅力 ch 影响诅咒和治愈能力,诅咒攻击命中和 ...
- Silverlight:《Pro Silverlight5》读书笔记 之 Layout
Layout The Layout Containers The Panel Background By default, the Background of a layout panel is se ...
- java jdk查看源代码
事实上假设你安装了JDK的话,你就已经拥有了java api的源代码. 安装JDK文件夹下的src.zip文件就是java api的源代码. 比方:C:\Program Files\Java\jdk1 ...
- Unity3d地图制作之模型高光
由于颇受暗黑破坏神美工的影响,最近都在研究怎么制作场景地图之类的. 那么今日讲的模型高光虽然和地图无关,但是也涉及到一些美工的知识,尤其是shader. 按照国际惯例,先贴一张图饱饱眼福. 大家可以看 ...
- easyui 设置一加载,搜索框立即弹出的效果
1.部分html文件 <div id="searchForm" region="north" title="标的查询" collaps ...
- 1644 免费馅饼 题解(c++)
1644 免费馅饼(巴蜀oj上的编号) 题面: SERKOI最新推出了一种叫做"免费馅饼"的游戏. 游戏在一个舞台上进行.舞台的宽度为W格,天幕的 ...
- JQuery 动态提交form
function exportExcel() { var merchantName = $('#merchantName').val(); var merchantNo = $('#merchantN ...
- servlet中获得tomcat项目根目录的绝对路径
public class CreateXmlAction extends HttpServlet { private ServletConfig config; public void init(Se ...
- linux查看当前shell的方法
这篇文章主要对比一下 source 命令执行shell文件和 ./ping.sh 这种方式执行shell文件的区别. 1. source ping.sh 这个是在当前的shell 中执行 ping ...