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

相关推荐
老朱佩琪!18 分钟前
Unity适配器模式
unity·设计模式·游戏引擎·适配器模式
技术小甜甜18 小时前
[Godot] 解决导出APK安装失败的常见问题:深入分析与调试方法
游戏引擎·godot·游戏开发
老朱佩琪!1 天前
Unity桥接模式
unity·设计模式·c#·桥接模式
技术小甜甜1 天前
[Godot][入门] 安装与版本选择:3.x 还是 4.x?(按项目类型一键决策)
游戏引擎·godot·游戏开发·2d
陈言必行1 天前
Unity 之 物理引擎中三种刚体力施加方式详解
unity·游戏引擎
foreveryao1231 天前
Unity渲染流程(底层逻辑)
unity·游戏引擎·图形渲染
small-pudding1 天前
Unity中的PBR(基于物理的渲染)
unity·游戏引擎
CreasyChan1 天前
3D游戏数学基础指南
游戏·3d·unity·数学基础
平行云2 天前
Enscape × Paraverse | 从设计到一键发布、网页分享、实时交互的全新体验
unity·ue5·xr·3dsmax·webgl·实时云渲染·云桌面
老朱佩琪!2 天前
Unity迭代器模式
unity·设计模式·迭代器模式