前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >unity3d之动画Animation使用

unity3d之动画Animation使用

作者头像
李小白是一只喵
发布2020-11-24 12:30:38
1.4K0
发布2020-11-24 12:30:38
举报
文章被收录于专栏:算法微时光算法微时光

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

然后编写代码:

代码语言:javascript
复制
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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 动画系统(Animation)
  • Animation的变量
    • 常用api
      • 运行实战
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档