美文网首页
unity3d之动画Animation使用

unity3d之动画Animation使用

作者: Lee_5566 | 来源:发表于2020-11-13 10:21 被阅读0次
    image.png

    动画系统(Animation)

    动画组件用于播放动画。

    首先要有一个模型,然后自己录制,这里就要用到Animation了。

    这里使用一个房子的模型,然后让房子旋转起来。

    Animation的变量

    变量 含义
    animatePhysics 打开时,动画将在物理循环中执行。这仅在与运动刚体配合时才有用。
    clip 默认动画。
    cullingType 控制该动画组件的剔除。
    isPlaying 目前是否正在播放动画?
    localBounds 本地空间中此动画组件的 AABB。
    playAutomatically 默认动画剪辑(Animation.clip 属性)是否应在启动时自动开始播放?
    this[string] 返回名称为 name 的动画状态。
    wrapMode 应如何处理超出此剪辑播放范围的时间?

    常用api

    函数 含义
    AddClip 将 clip 添加到名称为 newName 的动画中。
    Blend 在后续 time 秒中将名称为 animation 的动画向 targetWeight 混合。
    CrossFade 在后续 time 秒的时间段内,使名称为 animation 的动画淡入,使其他动画淡出。
    CrossFadeQueued 使动画在上一个动画播放完成后交叉淡入淡出。
    GetClipCount 获取当前分配给该动画的剪辑数。
    IsPlaying 名称为 name 的动画是否正在播放?
    Play 播放没有混合的动画。
    PlayQueued 在先前的动画播放完毕后再播放动画。
    RemoveClip 从动画列表中移除剪辑。
    Rewind 倒回名称为 name 的动画。
    Sample 对当前状态的动画进行采样。
    Stop 停止所有使用该动画启动的正在播放的动画。

    运行实战

    添加Animation组件
    image.png
    制作动画
    1. 在Hierarchy视图选中该模型
    2. 点菜单栏Window里的Animation


      image.png
      image.png

    面板介绍说明

    image.png
    image.png
    然后编写代码:
    using System.Collections;
    using System.Collections.Generic;
    using System.ComponentModel;
    using UnityEngine;
    
    public class buildFly : MonoBehaviour
    {
        private Animation ani;
        // Start is called before the first frame update
        void Start()
        {
            ani = this.GetComponent<Animation>();
        }
    
        // Update is called once per frame
        void Update()
        {
    
        }
    
        private void OnMouseDown()
        {
            ani.Play("buildFly");
        }
    }
    
    

    运行效果:


    image.png

    相关文章

      网友评论

          本文标题:unity3d之动画Animation使用

          本文链接:https://www.haomeiwen.com/subject/tziubktx.html