Unity3D_Legacy动画系统

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");

        }
    }


}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值