【Unity】Animator动画倒播,与StartRecording动画录制

一、Animator动画倒播

正常我们修改速度,只需要修改Animator.speed即可,但如果设置为负值,Animator系统会自动将其改为0值。

1.创建动画速度参数

(1)设置动画

我们需要创建表示速度的动画参数Speed,将其付给需要倒播的动画片段上的Multiplier,作为速度的乘数。

最终速度的值则是,Animator.speed * 此动画片段的speed * Multiplier

注意:此过程需要在Unity编辑器配置。使用代码自动修改也需要Edtior下修改,不可在运行时使用。

(2)在运行时修改Speed参数的值

只要将动画的Speed参数改为负值,即可完成倒播。

复制代码
                anim.SetFloat("Speed", -1);

注意:此方法倒播,可以执行动画上挂载的事件。

2.调用StartPlayback,使速度可以设置为负值

Animator.StartPlayback

public void StartPlayback ();

描述

将动画器设置为播放模式。

在播放模式中,可以通过设置时间值来控制动画器。动画器不通过游戏逻辑更新。使用 playbackTime 显式操作时间进度。

与其对于的方法是:StopPlayback。

调用StartPlayback, 可以将Animator的speed正确的设置为负值。

注意:调用StartPlayback后,无法使用动画事件。

如需在此情况下使用动画事件,则需要在Update中自定义动画事件逻辑。

相关推荐
SlowFeather6 小时前
Unity 使用 ADB 实时查看手机运行性能
android·unity·adb·性能优化·profiler
工藤新一¹11 小时前
C++/SDL进阶游戏开发 —— 双人塔防游戏(代号:村庄保卫战 13)
c++·游戏·游戏引擎·毕业设计·sdl·c++游戏开发·渲染库
虾球xz13 小时前
游戏引擎学习第247天:简化DEBUG_VALUE
c++·学习·游戏引擎
小赖同学啊15 小时前
Unity 和 Unreal Engine(UE) 两大主流游戏引擎的核心使用方法
unity·游戏引擎·虚幻
工藤新一¹16 小时前
C++/SDL 进阶游戏开发 —— 双人塔防(代号:村庄保卫战 14)
开发语言·c++·游戏引擎·游戏开发·sdl·实践项目
AgilityBaby16 小时前
unity Animation学习,精准控制模型动画播放
学习·3d·unity·游戏引擎
小赖同学啊16 小时前
Unreal Engine 实现智慧水库周边环境以及智慧社区模拟的实例
人工智能·游戏引擎·虚幻
EQ-雪梨蛋花汤17 小时前
【Flutter】Unity 三端封装方案:Android / iOS / Web
android·flutter·unity
虾球xz18 小时前
游戏引擎学习第248天:清理数据块显示
c++·学习·游戏引擎
小赖同学啊18 小时前
详解 Unreal Engine(虚幻引擎)
游戏引擎·虚幻