Unity3d itween path插件是可以通过调用相应的函数从而进行游戏编程中物体移动效果的插件,主要用于游戏开发,可以帮助用户完成各种动画,多种参数可以自由设置。欢迎下载!
Unity itween插件原理
iTween的核心是数值插值,简单说就是给iTween两个数值(开始值,结束值),它会自动生成一些中间值,例如:, 开始值-> 中间值 -> 中间值 …. -> 结束值。
这里的数值可以理解为: 数字,坐标点,角度,物体大小,物体颜色,音量大小等。
主要文件有两个iTween.cs 和 iTweenPath.unitypackage(编辑路径才需要这个包)
Unity itween插件演示效果
物体移动
iTween.MoveTo(gameObject,new Vector3(100,200,0),2);
第二个参数是要移动到的目标点坐标
其中第一个参数是要移动的物体
第三个参数是移动需要的时间,然后物体将在2秒之内移动到坐标点为(x=100,y=200,z=0)的位置。
itween path使用教程
一, 下载、文档 Dotween:
引入DoTween后,可在工具栏Tools--》DoTween Utility Pannel-->SetupDotween适配当前unity版本的新feature,也可打开dotween官网文档,也可以在Preferences设置
DoTween的全局信息。
二,引入Unity项目后,Dotween 的命名空间是 using DG.Tweening;
开始初始化
DOTween.Init(autoKillMode, useSafeMode, logBehaviour);
不初始化则使用默认值,
[csharp] view plain copy// EXAMPLE A: initialize with the preferences set in DOTween's Utility Panel
DOTween.Init();
// EXAMPLE B: initialize with custom settings, and set capacities immediately
DOTween.Init(true, true, LogBehaviour.Verbose).SetCapacity(200, 10);
DoTween可操作多种变量
[csharp] view plain copytransform.DOMove(new Vector3(2,3,4), 1);
rigidbody.DOMove(new Vector3(2,3,4), 1);
material.DOColor(Color.green, 1);
可使用链式编程:
[csharp] view plain copytransform.DOPath(path, 5, PathType.CatmullRom, PathMode.Full3D, 10, Color.red)
.SetLoops(100, LoopType.Yoyo)
.SetEase(Ease.OutQuart)
;
三,在itween里,我一时没有发现类似iTween里很好用的iTweenpath工具,可视化创建物体运动路径
所以我把iTween里的ITweenPath类也拿来和Dotween用了。
用法:可视化创建路径
1,把ITweenPath类导入Unity后
2,新建一个空GameObject,更名为“iPath”,然后挂上iTweenPath脚本
3,给ITweenPath分配5个路径节点,然后就可以在Scene手动创建路径了
4,路径创建好了,新建一个需要移动的物体:
3D Object -->>Cube吧,然后新建C#脚本DotMove,写代码
[csharp] view plain copyusing UnityEngine;
using System.Collections;
using DG.Tweening;
public class DotMove : MonoBehaviour {
public iTweenPath ipath;
void Start() {
//获取路径节点
Vector3[] path = new Vector3[ipath.nodeCount];
for (int i = 0; i < ipath.nodeCount; i++) {
path = ipath.nodes;
}
//DoTween设置路径
transform.DOPath(path, 5, PathType.CatmullRom, PathMode.Full3D, 10, Color.red)
.SetLoops(100, LoopType.Yoyo)
.SetEase(Ease.OutQuart) ;
}
}
4,回到编辑器,往cube的DoMove ipath挂上ipath,然后run————————》》,完成。