Unity_Legacy动画系统_014
2017-07-23 21:35
274 查看
Legacy动画系统
Unity3D的Mecanim动画系统是非常强大的,而且作为Unity推荐的动画系统,其未来会完全代替老的一套动画系统,即Legacy动画系统。目前的情况是Mecanim与Legacy两套动画系统同时共存,但是并不是说Legacy动画系统就没有任何价值了,作为Unity4.0以前使用的动画系统,我认为还是很有必要去了解和学习的,所以就有了这篇笔记。Unity自带的资源包里面的Charactor Controller里面包含的第三人称控制器就所用的动画就是Legacy动画。选择菜单“Assets”->“Import Package”->“Character Controller”
为基本物体创建插值动画
首先在Assets面板中创建一个Aniamtion,命名为Move(可以定义成别的)图000:
然后创建一个基本的游戏对象,添加组件Animation组件
并将Aniamtion组件中的Aniamtion属性设置成Move,size设置为1,Element设置为Move。
接着选中基本的游戏对象,在菜单栏中Window中选择Animation
或者使用快捷键(Ctrl+6),就会打开一个新的面板Animation面板
选择对游戏对象操作的属性就可以编辑动画了。
编辑完动画后,关闭Aniamtion面板我们会发现运行场景并没有效果,还有一条警告:The AnimationClip ‘Move’ used by the Animation component ‘Cube’ must be marked as Legacy.
还有一条信息:Default clip could not be found in attached animations list.
那是因为我们需要讲动画标记为Legacy才可以,请看下面的操作
选中Move动画
动画系统的复用
一个动画我们可以在多个游戏对象上使用,这就是动画的复用只需要游戏对象身上添加Aniamtion组件
同时设置Animation为添加AniamtionClip就可以了
动画与其他组件配合使用
动画可以在Light组件上一起使用制作闪烁的灯光可以和相机一同使用制作场景的漫游
脚本与Legacy动画系统的结合使用
using System.Collections; using System.Collections.Generic; using UnityEngine; public class Control: MonoBehaviour { Animation anim; // Use this for initialization void Start () { GameObject obj = GameObject.Find("Cube"); anim = obj.GetComponent<Animation>(); } // Update is called once per frame void Update () { //执行Move动画 if (Input.GetKeyDown(KeyCode.W)) { anim.Play("Move"); } //融合动画 if (Input.GetKeyDown(KeyCode.S)) { anim.CrossFade("Rotate"); } } }
相关文章推荐
- Unity入门操作_动画系统_Legacy_031
- Unity_Mecanim动画系统_015
- unity基础开发 ----Unity3D 4.0新功能:Mecanim动画系统基础教程
- Unity动画系统
- Unity 用户手册 用户指南创建游戏旧动画系统动画视图指南
- DFTween:unity最好的补间tween动画系统
- [cnblogs镜像]Unity 动画系统(Mecanim) 术语及翻译 表格
- Unity进阶 - 动画系统 - 给人物角色制作动画
- 【Unity快速实现小功能】动画系统学习小技巧篇(二)——摄像机跟随角色移动
- Unity Avatar动画系统
- Unity学习(十):动画系统Mecanimi(二)
- Unity之Mecanim动画系统笔记
- unity shader序列帧动画代码,顺便吐槽一下unity shader系统
- Unity 动画系统初探(2)
- Unity 动画系统出错
- [cnblogs镜像]Unity 动画系统(Mecanim)的组成结构
- unity基础开发 ----Unity3D 4.0新功能:Mecanim动画系统基础教程
- unity的Mecanim动画系统基础教程
- unity5.0新功能-布料、动画系统
- Unity动画系统 动态添加动画事件