unity动画倒播与动态设置循环

2023-11-09

动画倒播

之前都是使用混合动画的方法实现无缝衔接倒播的动作,这次的动画混合因为两段动画不一致,丢失了一部分动画.
我哪里敢麻烦美工爸爸重做一个,另一方面觉得只要把动画倒播就能轻松搞定这个问题,然后我就踩了下坑.

大部分的方法都是使用旧动画系统,年代久远已经失效了,官方api里也没翻到有用的信息,百度了很多都不是想要的结果.只有一个方法离想要的效果还差一点点.
定义一个speed变量
在这里插入图片描述
注意multiplier上面的speed是默认的速度,
而我们定义的speed参数控制的是倍数,最终的速度=我们定义的speed参数*multiplier上面那个原本的speed
结果为正数就是正向播放,负数是反向播放.
在这里插入图片描述
使用这个方法之后,你就会遇到和我一样的bug,播放总是有延迟,不是即时触发了动画.
经过我的观察,发现正向播放超过动画总长度之后,隔得时间越久,反向播放延迟的时间越长
给我的感觉就是normalizedTime超过1之后还在不停的增加,倒播也是一样低于0之后还在不停的减小,变成负数.

于是我在改变播放方向前做了点手脚,把normalizedTime修正了一下,果然就没有那个bug了,实现了完美的倒放
(aniUser是个animator类型的引用变量)
在这里插入图片描述
在这里插入图片描述

动态设置循环动画

下一个问题是循环动画,循环动画会有什么问题嘛.我也是这么想的
正常人的思路,一个动画进入时循环播放,离开时停止播放
或者动画不循环,进入时播放动画,离开时反向播放完美衔接

策划的脑回路哪是我能猜测的.我被要求做一个,进入时循环播放,离开时返回默认状态的效果.

拿到这个需求,思路很简单就是想要动态的设置动画循环,结果没有找到对应的api可以在代码中改变动画的loop选项.

于是采用了一个自身跳转自身的动画状态机来实现控制循环
在这里插入图片描述
到这里就完成了么? 并没有
衔接的动画默认会是这个样子
在这里插入图片描述
自身与自身没有完美的循环衔接.
我们需要打开setting,把exit time改成1,transition offset改成0
这样才能循环衔接上
在这里插入图片描述
这两个问题搞定了,下班吃饭去.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

unity动画倒播与动态设置循环 的相关文章

  • STM32CubeIDE HAL库操作IIC (一)配置篇

    目录 一 MX配置 使能中断 可选 DMA设置 可选 二 生成的代码 三 IIC通信的三种方式 Polling IT DMA 代码源自官方例程 1 Polling 常用 2 IT 开启中断 接收到数据时会调用回调函数 3 DMA模式 回调函

随机推荐

  • Qt 如何使用正则表达式 正则表达式 密码 email

    Qt 正则表达式 regular expression 详细用法查看此博客 https blog csdn net dongdong csdn article details 78574168 QRegExp regExpPsw 正则表达式
  • pytorch每日一学24(torch.quantize_per_tensor()、torch.quantize_per_channel())使用映射过程将tensor进行量化

    第24个方法 torch quantize per tensor input scale zero point dtype Tensor torch quantize per channel input scales zero points
  • 用JSP实现简单的四则运算

    用JSP实现简单的四则运算 作者 GGG166 首先定义一个Java的CompuerBean类放在beans包中用来计算两个数的四则运算 代码如下 作者 GGG166 package beans public class CompuerBe
  • 机器学习实战第一章——读书笔记

    数据挖掘 使用机器学习方法挖掘大量数据来帮助发现不太明显的规律 这称作数据挖掘 机器学习分类标准 一 有监督学习和无监督学习 1 有监督学习 提供带标签的训练集 k 近邻算法 线性回归 逻辑回归 支持向量机 SVM 决策树和随机森林 神经网
  • blender 渲染预览按钮不见了怎么办

    如果你在使用 Blender 时发现渲染预览按钮不见了 你可以尝试以下方法来解决这个问题 检查是否切换到了其他工作区 Blender 中有多个工作区 每个工作区都有自己的工具栏和面板 如果你切换到了其他工作区 渲染预览按钮可能不在屏幕上 检
  • 计算机网络基础知识--应用层协议HTTP、FTP、SMTP

    目录 1 HTTP 协议 HTTP 特点 HTTP 与HTTPS 的区别 HTTP 请求报文 HTTP 响应报文 2 FTP 协议 与TFTP 协议 FTP 协议 TFTP 协议 3 SMTP 协议 POP3协议与IMAP协议 SMTP协议
  • C语言中,数组首地址,数组元素首地址,数组名的区别

    目录 前言 一 什么是指针 二 正式介绍 1数组名和数组首元素地址 2 arr和 arr的区别 总结 前言 刚刚接触指针 一直想搞明白数组首地址 数组元素首地址 数组名的区别 花了点时间还是搞懂了 一 什么是指针 其实指针就是地址 地址就是
  • 表单嵌套表单涉及的校验和数据回显

    props中接收父组件的传值 data中定义表单的初始值 不能写成空对象 会报错 在created中对编辑的情况进行赋值 注意不能直接赋值 数据不是响应式的 需要使用到this set props formData type Object
  • Java-JavaWeb—(12)Maven

    1 Maver简介 1 1Maver是什么 Maven的本质是一个项目管理工具 将项目开发和管理过程抽象成一个项目对象模型 POM Maven是用Java语言编写的 他管理的东西统统以面向对象的形式进行设计 最终他把一个项目看成一个对象 而
  • JVM之垃圾回收机制

    垃圾回收机制 垃圾回收时机 System gc JVM垃圾回收机制决定 垃圾回收策略 如何判断对象已死 引用计数算法 可达性分析算法 需要垃圾回收的内存 方法区 元空间 堆 新生代 Young Generation 老年代 Old Gene
  • 深度学习基础学习-注意力机制(计算机视觉中)

    在网上看到很多关于注意力机制的说明 下面自己总结一下 大佬绕道 下面放几个文章的链接 添深度学习中的注意力模型 计算机视觉中的注意力机制 图像处理注意力机制Attention汇总 注意力机制详述 注意力机制总结 空间注意力机制和通道注意力机
  • Apache Kafka 编程实战-java客户端开发例子(入门教程轻松学)

    作者 稀有气体 来源 CSDN 原文 https blog csdn net liyiming2017 article details 82805479 版权声明 本文为博主原创文章 转载请附上博文链接 本入门教程 涵盖Kafka核心内容
  • 解决VNC server 连接不上的问题

    关于VNC server的配置可参考 Rock pi 开启VNC远程桌面适用于VNC KDE桌面 启动vnc server 但是连不上 因为只监听了127 0 0 1 所以需要在启动VNC server时添加参数 localhost no
  • 关于一个轻量、可靠的移动端 Vue 组件库

    最近挖掘到一个非常好用的组件库Vant 这边放一下vant官网链接 有兴趣的可以去尝试一下 Vant 4 Lightweight Mobile UI Components built on Vue 那么很多人就要问 Vant它到底好在那 我
  • npm-nrm安装执行报错问题解决

    npm nrm安装执行报错问题解决 问题一 nrm执行报错 internal validators js 124 throw new ERR INVALID ARG TYPE name string value 打开nrm目录下的cli j
  • Flutter Stack布局中定位的方式

    前言 想要记录一下Stack布局中 定位的两种方式 代码 省略无关代码 child new Column children
  • React-Hooks之useImperativeHandle使用,让父组件操纵子组件的状态和方法

    您好 如果喜欢我的文章 可以关注我的公众号 量子前端 将不定期关注推送前端好文 useImperativeHandle是react官方为了简便我们的ref操作 同时还可以让子组件返回给父组件自身的状态和方法去调用 useRef将ref绑定到
  • Qt加载动态链接库

    Qt加载动态链接库 1 直接在pro文件中添加 首先将 a 或者 lib 和 dll文件放入某一目录中 一般是放入程序目录下 例如在程序目录下放入了mydll lab和mydll dll文件 然后在 pro文件中添加 LIBS L PWD
  • 【C#学习笔记】打开新进程

    using System using System Collections Generic using System ComponentModel using System Data using System Drawing using S
  • unity动画倒播与动态设置循环

    动画倒播 之前都是使用混合动画的方法实现无缝衔接倒播的动作 这次的动画混合因为两段动画不一致 丢失了一部分动画 我哪里敢麻烦美工爸爸重做一个 另一方面觉得只要把动画倒播就能轻松搞定这个问题 然后我就踩了下坑 大部分的方法都是使用旧动画系统