Unity animator动画倒放的方法

这篇具有很好参考价值的文章主要介绍了Unity animator动画倒放的方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在Unity中, 我们有时候不仅需要animator正放的效果,也需要倒放的效果。但我们在实际制作动画的时候可以只制作一个正放的动画,然后通过代码控制倒放。

实现方法其实很简单,只需要把animator动画的speed设置为-1即为倒放,speed设置为1即为正放:

animator.speed = -1f; //倒放
animator.speed = 1f; //正放

比如我制作了一个从无到有的提示语的animator动画,然后我再通过设置speed=-1进行倒放。从而实现从无到有,再从有到无的效果。

首先我创建一个动画:

Unity animator动画倒放的方法,unity,游戏引擎

然后新建一个控制脚本,AnimatorController.cs,并编写如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class AnimatorController : MonoBehaviour
{
    public Animator animator;
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        if(Input.GetKeyDown(KeyCode.A))
        {
            animator.enabled = true;
            animator.Rebind();
            animator.speed = 1;
            animator.Play(0);
            StartCoroutine(wait());
        }
    }

    IEnumerator wait()
    {
        yield return new WaitForSeconds(1f);
        animator.Rebind();
        animator.speed = -1;
        animator.Play(0);
    }
}

把脚本放到场景中,并赋值animator对象,运行后,完美实现倒放。

制作效果如下:

Unity animator动画倒放的方法文章来源地址https://www.toymoban.com/news/detail-819437.html

到了这里,关于Unity animator动画倒放的方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Unity老动画系统Animation

    1、创建老动画系统 给要制作动画的GameObeject添加Animation组件 2、Animation参数 Animation:默认播放的动画 Animations:该动画组件可以控制的所有动画 Play AutoMatically:是否一开始就自动播放默认动画 Animate Physics:动画是否与物理交互 Culling Type:决定什么时候不播放动画     Alwa

    2024年02月06日
    浏览(40)
  • Unity Animation动画时间设置

    遇到一个需求,需要给角色添加一个翻滚动作,在翻滚同时无敌且可穿越敌人。 目前已有翻滚的动画,是使用Sprite制作的动画剪辑。如何匹配动画时间和脚色无敌时间?做到在翻滚结束时同时结束无敌与无碰撞设置。 在Animation设置窗口中,有Samples字段,可设置动画的采样帧

    2024年02月01日
    浏览(51)
  • Unity 制作动画 - Animation 的使用

    1. unity 顶部导航栏点击 Window  Animation 打开 Animation 窗口 通过这个窗口可以创建、编辑动画,也可以查看导入的动画。Animation 窗口同一时间只能查看、编辑同一段Clip中的动画 2. 选中 Hierarchy 面板中的节点, 也就是要制作动画的物体,该物体上没有动画,可以点击Animation窗口

    2024年02月15日
    浏览(42)
  • Unity Animator获取当前播放动画片段

    Animator获取当前播放片段,获取错误,跟当前播放的片段不一致的原因。 一般使用下面API,获取当前动画机播放片段: 这里有一个机制,如果上一句代码是播放一个动画片段,下一句代码立即去获取当前播放片段信息,是获取不到的,需要等待几十ms的延迟,才能正确获取到

    2024年02月12日
    浏览(49)
  • Unity Animator人物模型动画移动偏移

    模型动画出现移动方向偏移 !修改Animation中的Root Transform Rotation(根变换位置)、Root Transform Rotation(x,y,z)(旋转),Bake Info Pose修改为Original。可以解决 !!但是,使用动画移动函数时将无法移动,原因是锁定根变换位置和循环位置 !!!所以只要修改依据为原始或者微调偏离值,

    2024年02月15日
    浏览(38)
  • Unity新动画系统之动画状态机Animator Controller

    1、创建动画状态机文件 (1)会在创建动画时自动创建 (2)Create----Animator Controller 2、动画状态机窗口相关 层级:可以在右侧齿轮设置参数大小   3、添加动画 为对象添加动画后会自动添加到状态机中 4、状态切换 动画会在1和2之间不断切换  添加条件 点击转换箭头  在这

    2024年02月05日
    浏览(41)
  • Unity简单操作:设置触发条件 切换Animator动画控制器 里面播放的Animation动画

    确保animator里面有多个animation动画剪辑,点击Animator里面[Parameters]添加触发条件   添加连线箭头并且 给箭头连线绑定触发事件  添加连线箭头并且 给箭头连线绑定触发事件  

    2024年02月04日
    浏览(58)
  • Unity用Animation组件制作简单的动画

    游戏中经常会出现动态提示,例如提示当前金钱不足,一般会从屏幕中央弹出,然后缓慢的向上飘去。 今天游戏项目中遇到了这么个要求,以前做过几次,但总是会忘记,而且随着unity版本更新,新版本总有些莫名其妙的坑,今天写个文章记录一下。 首先用到的组件是Anima

    2024年02月04日
    浏览(57)
  • Unity动画控制器animator.CrossFade

    1.CrossFade虽然可以不用任何逻辑来链接而直接跳转,但是CrossFade只能覆盖其他动画,当当前动画播放完毕而没有跳出这个动画时再次调用CrossFade将会失败。造成动画依旧停在原位。 attack动画名称 0.1f由其他动画转入此动画需0.1秒来过渡。

    2024年02月15日
    浏览(45)
  • Unity 踩坑笔记 Animation动画不播放

    情况① 物体单挂Animation,无Animator,无法自动播放 原因 :两种Animation Clip 解决方案 : 注:此举会使其绑定的Animator失效 情况② 与上述相反,动画在Animator中无法播放 解决 :取消Legacy

    2024年02月12日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包