[Unity动画]06.子状态机
参考链接:
https://www.jianshu.com/p/6b1db3d060ac?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
子状态机,就是在状态机里面,再创建一个新的状态机,这个新的状态机就叫子状态机。
1.创建一个子状态机
右击Animator窗口的空白区域->Create Sub-State Machine,这里我将其命名为Die,然后双击点进去。可以看到,在子状态机中同样存在三种状态,Entry/Exit/Any State,这三种状态是属于子状态机的,而非父状态机。而这里的(Up)Base Layer指的是父状态机,这样就保证了子状态机里面的状态能够与父状态机进行交互。

2.进入子状态机
拖入一个Dying动画进去,此时Entry会连接到Dying,表示该子状态机的默认状态是Dying。接着回到父状态机,将Idle连接子状态机,此时会出现选择,连接子状态机 or 连接子状态机里的状态。连接子状态机,实际上相当于连接子状态机中的Entry状态。这两种情况都可以试着去连一下,如果是Idle->Die,则在子状态机中,是Entry跳到Dying;如果是Idle->Dying,则在子状态机中,是(Up)Base Layer跳到Dying。


3.退出子状态机
退出子状态机的方法有两种。
一是通过子状态机的Exit状态退出。Die状态机退出后,会回到父状态机,因为没有可以跳的状态,所以重新回到父状态机中的Entry状态。

二是通过连接父状态机。如下,子状态机中的Dying连接父状态机中的Run,Die状态机退出后,会回到父状态机,然后跳到Run。


[Unity动画]06.子状态机的更多相关文章
- Unity动画知识之二:Animator动画状态机
上次我们讲过Unity游戏动画从入门到住院,今天我们来讲一下动画状态机. 好了,现在我们已经成功的导入了动画.接下来要玩的东西就很装13啦.因为大部分动画师是用不到这家伙的,需要掌握这个技能的,至少也 ...
- Unity 动画知识之一
Unity现在已经用的很广泛啦,可是却一直没有什么美术向的教程. 程序用方面的内容在各个论坛都有讨论,但是美术似乎很弱势啊. 明明美术也很需要掌握引擎方面的内容嘛! 山谷里的野百合还有春天呢 我们美术 ...
- Unity 动画系统目录 之 Animation
返回 Unity 动画系统目录 官方文档 Animation:https://docs.unity3d.com/ScriptReference/Animation.html Animator:http ...
- Unity动画机制 Animator与Animator Controller教程
Unity动画机制Animator 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...
- Unity动画优化
Unity动画优化 https://blog.csdn.net/TracyZly/article/details/79991593 Unity中Animator做UI动画的一些细节 https://b ...
- 【Unity笔记】一些Mecanim动画系统、状态机的参数细节
动画混合树Blend Tree调整动画片段的播放速度: 0 动画不播放 -1 动画倒着播放:如果只有“往前走”的动画,可以变成“往后走”动画 勾选动画是否镜像: 左右颠倒(挥左手变成挥右手) 过度条件 ...
- unity动画状态机的学习
简单贴一下步骤,备忘 添加多个动画到动画控制器 创建transition,添加转换条件 在代码里面获取animator组件,然后animator.setXXX即可
- Unity 动画系统 StateMachineBehaviour 动画状态机
- Unity 动画
Unity 并没有自带建模工具. 3D建模工具 maya, 3dmax, blender Skinned Mesh Renderer Mesh Renderer Mesh Filter Modelli ...
随机推荐
- mac下安装、配置redies
https://blog.csdn.net/qq_21383435/article/details/80676497 可视化客户端安装(Mac): ruby -e "$(curl -fsSL ...
- socket 断线重连
send发送数据时,发送失败,进行如下重连处理: ) < )//serbuf中有数据可以发送才会执行这条语句 { printf("serial to tcp send msg erro ...
- Python进行RSA安装加密
一.下载ez_setup.py(http://peak.telecommunity.com/dist/ez_setup.py) 二.用python解释执行它 (如使用IDLE打开该py文件,按F5解释 ...
- 生成OSIDAAuto.OPCServer失败
来源:https://pisquare.osisoft.com/message/13441 A failuare of generating OSIDAAuto.OPCServer dorislipe ...
- response.sendRedirect传递参数和转向
response.sendRedirect是通过浏览器来做转向的. 假设在A.jsp页面设置request.setAttribute("username","admin& ...
- IIS7.0 下使用Intelligencia.UrlRewriter时Session为空问题
背景 新年伊始,本人的开发环境由Windows Server 2003 +IIS 6 升级成了 Windows Server 2008 +IIS 7,之后便着手参加新项目的开发.项目开发后期测试过程中 ...
- STL进阶--相等 vs 等价 (Equality vs Equivalence)
相等性 vs 等价性 问题: 以下两个find的结果分别指向什么? class Lsb_less { public: bool operator()(int x, int y) { return (x ...
- 【Guava 】Collections – Join and Split
Convert Collections to String Using Joiner Convert List into String Using Joiner @Test public void w ...
- [ZZ]Appium 文档翻译
http://testerhome.com/topics/150 Appium 是一个开源的,适用于原生或混合移动应用应用( hybrid mobile apps )的自动化测试平台. Appium ...
- 2.Linux技能要求
Linux嵌入式工程师技能要求: 1.C语言 具备C语言基础.理解C语言基础编程及高级编程,包括:数据类型.数组.指针.结构体.链表.文件操作.队列.栈. ...