Unity-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深入系列---状态机面板深入的更多相关文章
- 【转】unity Animator 怎么判断一个动画播放结束
关于unity Animator 怎么判断一个动画播放结束这里有几种方法.希望对大家有帮助.还有其他办法的可以分享一下 第一种方法:在动画结束帧后面加个动画事件,调用下含这个变量的函数接口不是可以了? ...
- 【转】Unity Animator卡顿研究
Unity Animator卡顿研究 发表于2017-07-26 点赞3 评论3 分享 分享到 2.3k浏览 想免费获取内部独家PPT资料库?观看行业大牛直播?点击加入腾讯游戏学院游戏程序行业精英群 ...
- Unity Animator动画状态机 深入理解(一)
接触Unity以来就已经有了Animator,Animation用的少,不过也大概理解他俩之间的一个区别于联系. 图中其实就是Animator和Animation之间的区别于联系了,啊!你肯定会告诉我 ...
- Unity Animator动画状态机 深入理解(三)二维混合树
介绍二维之前,先说说一维吧~ 这个是通过旋转角度速度快慢来表现身体的大转和中转~ 通过一个-133~133的数值来进行控制. 注:后面的那个对钩是镜像的意思. 其实二维混合树并没有想象中的那么难.先来 ...
- Unity Animator动画状态机 深入理解(二)IK控制
IK还是一个很神奇和实用的东西啊,起码可以用代码来控制人物骨骼位置还是很爽的.因为不是动画师~ 这篇可能跟Animator没啥关系了哈,都是代码层的. 看了一官方的案例,老的,有些问题,自己修改了一下 ...
- [UML]UML系列——状态机图statechart diagram
系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...
- 【Unity Shader】自定义材质面板的小技巧
写在前面 之前遇到过一些朋友问怎么在材质面板里定义类似于bool这种变量,控制一些代码的执行.我们当然可以写一个C#文件来自定义材质面板,就像Unity为Standard Shader写材质面板一样( ...
- unity使用ugui自制调色面板
突然想实现一个调色面板,然后开工... 首先找找有没有什么接口可调,木有找到,找到一些调用win32实现的本地颜色面板的调用,感觉不科学,反正多平台肯定是搞不定的. 既然没找到,还是老老实实的自己写吧 ...
- [Unity动画]06.子状态机
参考链接: https://www.jianshu.com/p/6b1db3d060ac?utm_campaign=maleskine&utm_content=note&utm_med ...
随机推荐
- nginx的基本配置和虚拟主机的配置
在Nginx配置文件(nginx.conf)中,一个最简化的虚拟主机配置代码如下: 跟Apache -样,Nginx也可以配置多种类型的虚拟圭机:一是基于IP的虚拟主机,二是基于域名的虚拟主机,三是基 ...
- windows namedPipe 命名管道clent and server
1.client: #include "iostream" #include "windows.h" using namespace std; void mai ...
- linux centos5.7(32bit) oracle 10g oracle11g
cenOS5.5安装oracle10g(傻瓜篇) http://www.cnblogs.com/fnng/archive/2012/06/19/2554159.html (转) 在cenOS5.5上 ...
- React-Native坑1:Invariant Violation:Application 项目名 has not been registered.
React-Native坑1:Invariant Violation:Application 项目名 has not been registered. 字数347 阅读1421 评论3 喜欢7 前言 ...
- paper 72 :高动态范围(HDR)图像 HDR (High Dynamic Range)
In standard rendering, the red, green and blue values for a pixel are each represented by a fraction ...
- c语言 typedef
在C和C++编程语言中,typedef是一个关键字.它用来对一个资料类型取一个新名字.目的是为了使源代码更易于阅读和理解. 来看以下程式码: int coxes; int jaffa; ... c ...
- 要心中有“数”——C语言初学者代码中的常见错误与瑕疵(8)
在 C语言初学者代码中的常见错误与瑕疵(7) 中,我给出的重构代码中存在BUG.这个BUG是在飞鸟_Asuka网友指出“是不是时间复杂度比较大”,并说他“第一眼看到我就想把它当成一个数学问题来做”之后 ...
- SqlSever中Index Seek的匹配规则(一)
我们知道在SqlServer中,索引对查询语句的优化起着巨大的作用,一般来说在执行计划中出现了Index Seek的步骤,我们就认为索引命中了.但是Index Seek中有两个部分是值得我们注意的,我 ...
- NOIP201208同余方程
NOIP201208同余方程 描述 求关于x的同余方程ax ≡ 1 (mod b)的最小正整数解. 格式 输入格式 输入只有一行,包含两个正整数a, b,用一个空格隔开. 输出格式 输出只有一行,包含 ...
- django view使用学习记录
判断用户是否登录 request.user.is_authenticated()auth.authenticate(username=username, password=password)