Unity3D学习笔记之uGUI(5):Animation Integration简述
Animation Integration组件在很多动画项目开发中会使用到,但考虑到有些人对uGUI中Animation Integration动画集成组件不了解,所以下面要给大家详细介绍下Animation Integration组件,不知道可以看一看。
5、Animation Integration
Unity的Animation System(动画系统)提供了Animation来过渡控制状态的切换。切换状态伴随许多属性变更,而此过程可交给Animation处理,这是一个强大功能。
要想使用Animation切换模式,交互控件本身需要挂载Animator脚本。这可通过点击“Auto Generate Animation”自动完成。与此同时还会创建一个AnimatorController,且它的状态都设置好了的。
新Animator Controller已经就绪。不像大多数的Animator Controller,此Controller可按需定制并存储动画间转换的方式。
举个例子,选中带有Animator Controller的Button,通过菜单“Window->Animation”打开动画编辑窗口,在此编辑Button每个状态的动画。
由动画片段(Animation Clip)弹出菜单可选择某个片段,比如可选“Normal”、“Highlighted”、“Pressed”以及“Disabled”(对应了Button的几种状态)。
Normal状态就是按钮默认值,可以设为空。对于其他状态,最常见配置方法是在时间线(Timeline)的起始点设置关键帧。然后不同动画状态间的转换则交由Animator处理。
作为示例,从弹出的动画片段选项中选择Highlighted 状态,切换到时间线起点,即可修改Highlighted 状态下Button的宽度:
(1)点击Record按钮;
(2)在Inspector面板调整Button宽度;
(3)退出Record模式。
点击播放,即可查看高亮时按钮如何变化。在这一关键帧中,可以设置任意的属性参数。不同按钮可共享同一个Animator Controller,以及共享同一个行为。
注意,UI 动画状态切换模式(Animation Transition Mode)与Unity传统动画系统(Legacy Animation System)并不兼容。所以现在应该只使用Animator组件。