ROOT MOTION原理

ROOT MOTION原理

ID:39467889

大小:427.00 KB

页数:7页

时间:2019-07-04

ROOT MOTION原理_第1页
ROOT MOTION原理_第2页
ROOT MOTION原理_第3页
ROOT MOTION原理_第4页
ROOT MOTION原理_第5页
资源描述:

《ROOT MOTION原理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、根运动原理1.基本概念   在Unity3D动画中,模型的位置、角度经常会发生变化,我们需要决定是否将模型在动画中发生的这些变换化用到实际模型(GameObject)中。  在Untiy3D中将动画中的变换分成两类:  1)BodyTransform(pose:姿势)  2)RootTransform(trajectory:轨迹)  我们可以设置动画中的关于模型的一些变换(平移、旋转等)是属于BodyTransform(pose)还是RootTransform(trajectory)的一部分。  举例如下(ac001为角色跑步):  在上图中:  1)

2、如果【ApplyRootMotion】未选中:则角色在原地跑步,且Transform中的值没有任何变化  2) 如果【ApplyRootMotion】已选中:则角色在场景中跑步,且Transform中的值跟随变化  1.1BodyTransform(Pose:姿势)  身体变换(BodyTransform)是角色的质心(themasscenterofthecharacter)。它用于Mecanim重定位引擎,提供最稳定的位移模型。身体方向(BodyOrientation)是下半身方向与上半身方向的平均,与AvatarT字姿势(T-Pose)相关。   

3、身体变换(BodyTransform)和方向(Orientation)存储在动画片段(AnimationClip)中(使用Avatar中设置的肌肉定义)。它们是存储在动画片段(AnimationClip)中的唯一世界空间曲线。其他一切事项:肌肉曲线和IK目标(四肢(HandsandFeet))相对身体变换存储。1.2RootTransform(trajectory:轨迹 实时计算)   根变换(RootTransform)是身体变换(BodyTransform)在Y平面上的投影,在运行时计算。在每一帧,根变换(RootTransform)中的变化都会计

4、算出来。然后变换的变化会被应用到游戏对象(GameObject)上,使之移动。   角色下面的圆表示根变换(RootTransform)1.3BakeIntoPose(烘焙为姿势)    BakeIntoPose:也就是将变换设置为BodyTransform(pose)的一部分。   如果把变换设置成BodyTransform(pose)的一部分,就相当这些变换是属于动画本身的一部分,即无论是否设置ApplyRootMotion,在场景中,我们都会看到模型位置或角度的变化。因为BodyTransform不影响模型(GameObject)实际的位置和角度

5、,所以这里只是纯粹的动画效果,模型(GameObject)的位置和角度参数值不变   如果设置成RootTransform,RootTransform将影响模型(GameObject)的实际位置和角度(前提是要设置“ApplyRootMotion”,如果不设置ApplyRootMotion的话,也就是说变换将不应用,场景中的模型(GameObject)位置或角度是不会有变化的,就像一个行走动画,可能一直在原地行走)。1.4ApplyRootMotion   ApplyRootMotion作用如下:   1)决定是否应用

6、RootTransform:      如果勾选【ApplyRootMotion】,则应用RootTransform在播放动画的同时,模型(GameObject)的位置和角度会同时跟着变化。如果不勾选【ApplyRootMotion】,则不应用RootTransform,所有的RootTransform都将不起任何作用。即相当于所有没有BakeintoPose的变换都不起作用了。   2)在动画结束后,将BodyTransform中的变化应用到模型:     这里是结束的时候才应用,也就是说动画的时候,模型的(GameObject)position、r

7、orate等参数是不变的,当动画结束之后,开始新的动画之前才会改变,注意这里跟前面提到的RootTransform的区别2.实例说明  下面以一个人物行走的动画为例,分析以下几种情况(这里以“Roottransformposition(XZ)为例)  1)勾选【BakeintoPose】,不勾选【ApplyRootMotion】    勾选”BakeintoPose"后,变换属于BodyTransform,所以即使这里未勾选”ApplyRootMotion“,但是动画依然会在场景中体现,人物会按照动画的路径行走(但是如果我们观察Inspector中模型

8、的Transform,其值一直不变)。这是因为没有勾选ApplyRootMotion,所以动画

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。