当前位置: 首页 > article >正文

Unity代码中修改动画速度

unity版本:Unity2022.3.51f1c1

误区:使用animator.speed来修改

public float speed;
animator.speed=speed;

这样在运行过程中是没法动态修改速度的,会发现动画速度一直是初始速度,而且这样会对该animator controller里的所有状态生效

正确处理: 

修改 AnimatorStateInfo.speed(影响某个动画状态)

如果你只想改变特定状态的速度,可以使用  Animator.SetFloat() 结合 动画参数 实现。

public float speed;//记得赋值
animator.SetFloat("SpeedMultiplier",speed);

条件

  • 需要在 Animator 状态机 中的动画 Speed 参数绑定 SpeedMultiplier(在 Animator 里添加一个 Float 类型参数,并在 Animation 状态的 Speed 选项中选择 SpeedMultiplier)。

 


http://www.kler.cn/a/597163.html

相关文章:

  • C#里使用libxl的数字格式
  • 1.Go - Hello World
  • NR SRS Configuration
  • 天津大学:《2025深度解读DeepSeek:原理与效应》|44页|附PPT下载方法
  • 基于AWS Endpoint Security(EPS)的自动化安全基线部署
  • 破局 MySQL 死锁:深入理解锁机制与高效解决方案
  • LangChain组件Tools/Toolkits详解(5)——返回产出artifact
  • k8s调度的过程,各组件之间的配合解析
  • Ubuntu实时读取音乐软件的音频流
  • Flutter中常用命令
  • 矩阵篇---矩阵的应用
  • 常考计算机操作系统面试习题(三上)
  • 【Go】map数据类型
  • React 中的错误边界(Error Boundaries),如何使用它们捕获组件错误
  • Java 之「单调栈」:从入门到实战
  • 专访成都昭音科技Jackal:AI内容营销助力中企走向全球
  • AndroidFramework 生成 ota_update.zipadb验证OTA
  • JAVA学习*内部类
  • 通过webrtc+canvas+css实现简单的电脑滤镜拍照效果
  • 告别 ResultSet 的烦恼:使用 Apache DBUtils 和 ArrayList 优化数据管理