DOTween插件学习笔记
术语
Tweener 控制值并对值进行动画
Sequence 特殊的Tweener控制其他的Tweens,并将它们作为一个组进行动画。
Tween 既表示一个Tweener,也表示一个Sequence。
Nested Tween 包含在Sequence中的嵌套tween
准备工作
"Tools/Demigiant" menu打开Dotween Utility Panel,点击Setup DoTween
在你想要使用DoTween代码的脚本中引入命名空间
using DG.Tweening;
默认的运动方式
主要表现是开始执行时,快速,在后期会逐步减速。该算法在执行时间长度比较短时看着比较合理舒适,但是如果出现类似距离较长,时间也相对较长时,就容易发现在后期有点很不好接受的缓慢移动。此时就需要考虑更改运动方式。
transform.DOMoveX(4, 1).SetEase(Ease.InOutQuint);
transform.DOMoveX(4, 1).SetEase(myAnimationCurve);
transform.DOMoveX(4, 1).SetEase(MyEaseFunction);
1、实现简单移动
transform.DOMove(new Vector3(2,3,4), 1);
调用后1秒移动到点(2,3,4),函数返回一个tweener
tweener可以通过一些带set前缀的方法进行设置
myTween.SetLoops(4, LoopType.Yoyo).SetSpeedBased();
通过带on前缀的方法绑定回调函数
myTween.OnStart(myStartFunction).OnComplete(myCompleteFunction);
如果回调函数要带参数可以使用lambda表达式
transform.DOMoveX(4, 1).OnComplete(()=>MyCallback(someParam, someOtherParam));
2、实现整体缩放的同时进行1秒后移动之后再旋转
Sequence mySequence = DOTween.Sequence();
返回可用的序列
mySequence.Append(transform.DOMoveX(45, 1));
mySequence.Append(transform.DORotate(new Vector3(0,180,0), 1));
使用Append将指定的Tweener加入到Sequence的结尾
mySequence.PrependInterval(1);
PrependInterval将一段时间加入到Sequence的开头
而使用Prepend可以将Tweener加入到Sequence的开头,
mySequence.Prepend(transform.DOMoveX(45, 1));
mySequence.Insert(0, transform.DOScale(new Vector3(3,3,3), mySequence.Duration()));
使用Insert可以重叠Tweener
以上代码也可写成
Sequence mySequence = DOTween.Sequence();
mySequence.Append(transform.DOMoveX(45, 1)).Append(transform.DORotate(new Vector3(0,180,0), 1)).PrependInterval(1).Insert(0, transform.DOScale(new Vector3(3,3,3), mySequence.Duration()));
DOTWEEN :: An error inside a tween callback was silently taken care of > The object of type
这个错误是以警告的方式提示你的,想要定位错误的地点可以在DoTween在面板中关闭安全模式
http://forum.demigiant.com/index.php?topic=151.0
DOTween插件学习笔记相关推荐
- Gradle插件学习笔记(二)
之前介绍了Gradle插件的开发,这次会对功能进行一部分拓展,建议没有读过第一篇文章的朋友,先看一下Gradle插件学习笔记(一) Extension 之前的文章提到过,如何编写一个插件,但是并不能通 ...
- Unity Cinemachine插件学习笔记,实现单目标和多目标之间切换
Unity Cinemachine插件学习笔记,实现单目标和多目标之间切换 *版本要求Unity2017.1及以上. 参考资料: [官方] Unity 2017.1正式版发布 Cinemachine插 ...
- Unity Cinemachine插件学习笔记
以下都是转载内容,能够比较直观的学习一些基础内容.现在的Cinemachine更新了许多新的功能,但是Cinemachine插件都ExamplesScences,去看一下官方例子和文档来学习更佳 *版 ...
- Unity Cinemachine插件学习笔记,结合Timeline实现简单场景动画
Unity Cinemachine插件学习笔记,结合Timeline实现简单场景动画 *版本要求Unity2017.1及以上. 参考资料: [官方] Unity 2017.1正式版发布 [Unity] ...
- JavaScript 封装插件学习笔记(一)
此篇只是笔记,在借鉴.参考.模仿的过程,可能不完整,请多指教! 定义插件名称要注意命名冲突,防止全局污染. 1.第一种Javascript对象命名:(Javascript语言是"先解析,后运 ...
- Spring、SpringMVC、SpringBoot及其插件学习笔记集合(持续更新中....)
笔记目录 语言 1.MyBatis 1.1 普通用法 1.1.1 配置文件 1.1.2 mapper文件 1.2 通用mapper文件 2.Thymeleaf 2.1 命名空间 2.2 依赖 2.3 ...
- IntelliJ IDEA 2016.3.1 学习git 码云插件 学习笔记
2019独角兽企业重金招聘Python工程师标准>>> File-Settings 搜索不到的话去这里下载https://plugins.jetbrains.com/idea/plu ...
- QT自定义控件插件学习笔记
本文主要阐述的是自定义控件插件的创建与调用方法和注意事项点. 目录 一.创建自定义控件插件 1.Qt Designer专用接口 2.插件的自定义控件类接口 二.调用自定义控件插件 1.动态调用插件 2 ...
- Cinemachine学习笔记
以下都是转载内容,能够比较直观的学习一些基础内容.现在的Cinemachine更新了许多新的功能,但是Cinemachine插件都ExamplesScences,去看一下官方例子和文档来学习更佳 *版 ...
最新文章
- 记一次修复被篡改的IE首页
- python爬去百度文库_利用Python语言轻松爬取数据[精品文档]
- c语言scanf()函数的原理
- PMCAFF招兵啦~只要最骚最浪的你~
- iCOM组件(iComponent,应用或学习组件)
- 栈应用(中缀表达式转后缀表达式并计算后缀表达式的值)
- 各种编译环境中如何为C++添加命令行参数(Command-line parameter)
- 安装win7和XP双系统的注意事项
- MAC编译:fatal error: ‘endian.h‘ file not found
- 系分 01 企业信息化战略与实施
- 逆流而上的你,送给现在的你
- 数论基本定理和欧拉广义降幂公式
- 盛迈坤电商:电商运营要怎么样进行选款
- 彻底卸载Tomcat
- spark大数据分析:spark Struct Strreaming(21) 数据流处理
- 年终思路梳理(三)——工业互联网
- 计算思维应用于计算机学科,【计算机教学论文】计算机教学中的计算思维培养(共2667字)...
- 升级到Android12后Termux不能访问Android/data目录该怎么办
- Python零基础之自动登录12306
- 每日加瓦,终成栋房5-正则表达式