【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中自定义动画事件逻辑。

相关推荐
Thomas_YXQ5 小时前
Unity3D PostLateUpdate为何突然占用大量时间详解
开发语言·数码相机·游戏·unity·架构·unity3d
向宇it6 小时前
【unity进阶知识1】最详细的单例模式的设计和应用,继承和不继承MonoBehaviour的单例模式,及泛型单例基类的编写
游戏·unity·单例模式·设计模式·游戏引擎·框架
Thomas_YXQ7 小时前
Unity3D 中构建行为树插件详解
游戏·unity·架构·unity3d·游戏开发
charon877811 小时前
Unreal Engine 5 C++: 插件编写03 | MessageDialog
c++·ue5·游戏引擎·虚幻
vip45115 小时前
游戏开发2025年最新版——八股文面试题(unity,虚幻,cocos都适用)
unity·虚幻·cocos2d
_oP_i20 小时前
Unity 的 UI Event System 是一个重要的框架
unity
charon877820 小时前
UE5: Content browser工具编写02
c++·ue5·游戏引擎
ttod_qzstudio1 天前
Unity中Mesh使用MeshTopology.Lines模式绘制线条及MeshTopology.Quads模式绘制网格参考
unity·线条绘制
蓝裕安1 天前
DesignMode__unity__抽象工厂模式在unity中的应用、用单例模式进行资源加载
unity·游戏引擎
tealcwu2 天前
【Unity基础】Unity中跨平台使用SQLite
unity·游戏引擎