Unity笔记-03

Unity笔记-03

Animation&&AnimationState

首先要录制动画:

首先在需要录制动画的对象下添加Animation组件,再点击对象在Animation栏目点击Create创建动画,对需要变换的组件,通过Add Property按钮添加,会出现类似AE的时间条,通过添加移动关键帧来操作时间,点击红点(录制按钮),在对关键帧进行操作,操作完毕,在此点击红点,完成录制。

录制完毕,需要将素材添加到对象Animation组件下,方可使用。

Animation播放模式:

Once:每次输入播放指令,播放一次

Loop:输入播放指令后,循环播放

Clamp Forever:播放一次之后,固定在动画最后一帧

Ping Pong:正向播放完毕后反向播放,循环往复

代码:animation.IsPlaying("动画名")

检查动画是否在播放,返回bool类型

代码:animation.Play("动画名")

播放指定动画

代码:animation["动画名"]

获取指定的动画对象

代码:animation[].speed

动画播放速度,1为正常速度,负数则为反向播放

代码:animation[].wrapMode=wrapMode.PingPong

设置动画播放模式

代码:animation[].length

获取动画总时长

代码:animation[].time

获取动画当前播放到的时间

代码块-开门与关门脚本练习:

public class DoorAnimationDemo : MonoBehaviour
{
    private bool doorState = false;
    private Animation anima;
    private string animaName = "Door";
    private void Start()
    {
        anima = this.GetComponent<Animation>();
    }
    private void OnMouseDown()
    {
        if (doorState)
        {
            if (!anima.isPlaying)
            {
                anima[animaName].time = anima[animaName].length;
            }
            anima[animaName].speed = -1;
            
        }
        else
        {
            anima[animaName].speed = 1;
        }
        anima.Play(animaName);
        doorState = !doorState;
    }
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值