回到 Animator深入系列总目录

本篇不讲解所有的面板功能,只是针对一些非常用功能进行介绍。

1.状态

1.1状态简介

简单的不做介绍了,需要特别注意:

1.Paramter勾选后可以指定参数控制具体属性

2.Write Defaults勾选后用默认动画剪辑属性覆盖到状态上

3.Foot IK 勾选上之后会有一个脚部IK修正,有一次角色跑动不自然,当我勾选上就好了。

至于斜坡地形的脚步自适配,这个好像不是很好用

1.1子状态

右键即可添加子状态,子状态中可以放入若干状态,一般都会用到。

这里有个小技巧,在子状态里双击空白处可以立即跳回主状态(unity5.4.x是可用的)

具体可以参考圣典:LINK

1.2混合树

混合树可以参考官方状态机项目的Generic Skeleton Example

这里给出圣典的链接:LINK

右键Create State>From New Blend Tree即可创建混合树

Blend Type可以设置混合树类型,右下角加号可以添加新的运动进入混合树,或者添加子混合树

回到状态机面板可以点击左上角:

这里不多做介绍,可以看官方的Generic Skeleton Example

2.Transition

2.1 has exit time

Has Exit Time在4.x版本名叫Atomic,但其功能都一样

下图左边是Has Exit Time勾上,右边是没勾

可以看见勾上后,等状态结束才会切换状态。而不勾上任何时候都可以切换

2.2.Solo与Mute

这个功能用在调试时,Mute相当于把目标过渡禁用掉。Solo表示只生效这一条过渡

可以多选,当选中后会出现箭头提示

条件满足优先于Solo/Mute,当条件没有满足时依然不会过渡

3.FBX设置面板

3.1.循环匹配(面板绿灯)

当设置了根骨骼后,Unity会自动帮你进行循环匹配的测试

所以匹配就是指动画开始和结束的根骨骼位置是否有偏离

但有些动画肯定是要有偏离的,所以这个匹配只是作为参考

圣典的链接:LINK

通过拖动时间轴,可以看见运动曲线:

4.Layers Setting

4.1.层的设置

点击齿轮按钮,即可设置层的参数

Weight - 层的权重,多个层时可以设置

Mask - 身体遮罩对层的影响,在Create>Avatar Mask中可以创建。这个可以参考Unity状态机例子工程的Animator Controller场景

Blending - 混合模式,可以看下图

Sync - 同步层,打开后2个层所有状态同步,且不可编辑。但可以替换动画剪辑。类似Animator Override Controller,官方表示比如需要做负伤状态的动画,可以使用该功能,替换成负伤状态的移动,空闲等

Timing - 当打开Sync时,才可以打开该选项。这时同步层可以取得被同步层的控制权

下图中默认的剪辑长度是90帧,而同步层的剪辑长度是299帧。可见,如果同步层的剪辑长度不一致,会出现加速的情况

如果不想加速就打开这个开关

(左边是开启Timing,右边是未开启)

IK Pass - 开启这个选项后,脚本才可以控制IK。

Unity-Animator深入系列---状态机面板深入的更多相关文章

  1. 【转】unity Animator 怎么判断一个动画播放结束

    关于unity Animator 怎么判断一个动画播放结束这里有几种方法.希望对大家有帮助.还有其他办法的可以分享一下 第一种方法:在动画结束帧后面加个动画事件,调用下含这个变量的函数接口不是可以了? ...

  2. 【转】Unity Animator卡顿研究

    Unity Animator卡顿研究 发表于2017-07-26  点赞3 评论3 分享 分享到 2.3k浏览 想免费获取内部独家PPT资料库?观看行业大牛直播?点击加入腾讯游戏学院游戏程序行业精英群 ...

  3. Unity Animator动画状态机 深入理解(一)

    接触Unity以来就已经有了Animator,Animation用的少,不过也大概理解他俩之间的一个区别于联系. 图中其实就是Animator和Animation之间的区别于联系了,啊!你肯定会告诉我 ...

  4. Unity Animator动画状态机 深入理解(三)二维混合树

    介绍二维之前,先说说一维吧~ 这个是通过旋转角度速度快慢来表现身体的大转和中转~ 通过一个-133~133的数值来进行控制. 注:后面的那个对钩是镜像的意思. 其实二维混合树并没有想象中的那么难.先来 ...

  5. Unity Animator动画状态机 深入理解(二)IK控制

    IK还是一个很神奇和实用的东西啊,起码可以用代码来控制人物骨骼位置还是很爽的.因为不是动画师~ 这篇可能跟Animator没啥关系了哈,都是代码层的. 看了一官方的案例,老的,有些问题,自己修改了一下 ...

  6. [UML]UML系列——状态机图statechart diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  7. 【Unity Shader】自定义材质面板的小技巧

    写在前面 之前遇到过一些朋友问怎么在材质面板里定义类似于bool这种变量,控制一些代码的执行.我们当然可以写一个C#文件来自定义材质面板,就像Unity为Standard Shader写材质面板一样( ...

  8. unity使用ugui自制调色面板

    突然想实现一个调色面板,然后开工... 首先找找有没有什么接口可调,木有找到,找到一些调用win32实现的本地颜色面板的调用,感觉不科学,反正多平台肯定是搞不定的. 既然没找到,还是老老实实的自己写吧 ...

  9. [Unity动画]06.子状态机

    参考链接: https://www.jianshu.com/p/6b1db3d060ac?utm_campaign=maleskine&utm_content=note&utm_med ...

随机推荐

  1. 为什么要在block用weak self

    block会给内部所有的对象引用计数加一,这一方面会带来潜在的retain cycle,不过我们可以通过Weak Self的手段解决.另一方面比较重要就是,它会延长对象的生命周期. 在block前面写 ...

  2. PostgreSQL Errors and Messages

    使用RAISE语句来报告消息并抛出错误 RAISE [ level ] ’format’ [, expression [, ... ]] [ USING option = expression [, ...

  3. JAVA-语法-运算符

    1.赋值运算符  =  (优先级较低) 2.算数运算符  +  —  *  /  % 3.字符串连接运算   +  (把其他类型转成字符串并和字符串类型进行连接) 4.扩展赋值运算符   +=   — ...

  4. TImageList 和 TlistView 组件(C++Builder)

    __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { //加载图标到Imagelist Graphics::TBitmap *bm ...

  5. 最长上升子序列的变形(N*log(N))hdu5256

    序列变换 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  6. ui方案设计

    最近在做一个ui,前端,为了引出创意,万事开头难,记录一下: 算是单页吧,一般都是左侧是导航,右边是内容,单页的话,要记录标签关闭,窗口区域. 操作的连惯性等.UI设计是个细活,需要深加研究,以后补充 ...

  7. 夺命雷公狗---DEDECMS----14dedecms首页导航条的完成

    我们的首页完成了,那么下一步就开始创建一个模型了, 添加好电影模型后我们来给他添加一些字段,这些字段主要还是要看我们的项目需求来添加的,因为我们的项目里有: 我们在项目中要用得上这些字段,所以要对他们 ...

  8. 安装kingroot之后的残留

    /system/usr/icu/icusuflag.conf/system/usr/ikm/ikmsu/system/usr/iku//system/usr/attrch/system/etc/ins ...

  9. 「LAMP」在ubuntu及其衍生版上 安装LAMP

    在Ubuntu上安装LAMP 此种方法在Linux Mint 13/14/15/16/17.Ubuntu 12.10(Quantal Quetzal)和Ubuntu 13.04 Raring Ring ...

  10. onTouch和onTouchEvent

    public boolean dispatchTouchEvent(MotionEvent event) { if (mOnTouchListener != null && mOnTo ...