【Unity3D游戏开发】—— iTween札记 二(MoveTo寻路)
【Unity3D游戏开发】—— iTween笔记 二(MoveTo寻路)
在雨松大大的博客中看到了一个iTween的例子,根据路径来自动寻路。虽然没有Unity自带的寻路功能强大,但可以实现一些简单的功能。毕竟自带的寻路功能只有付费版。
新建一个场景,放上一个plane,灯光,摄像机位置设置好,那么就开始了,先创建6个Cube来代表路径,然后创建一个Cube代表移动物体。
导入iTween资源包后创建脚本,代码如下
using UnityEngine; using System.Collections; public class xunlu : MonoBehaviour { //寻路路线 public Transform[] paths; // Use this for initialization void Start () { Hashtable args = new Hashtable(); //设置路径的点 args.Add("path", paths); //设置类型为线性,线性效果会好一些。 args.Add("easeType", iTween.EaseType.linear); //设置寻路的速度 args.Add("speed",10f); //是否先从原始位置走到路径中第一个点的位置 args.Add("movetopath",true); //延迟时间 args.Add("delay", 0.1f); //三个循环类型 none loop pingPong (一般 循环 来回) args.Add("loopType", "pingPong"); //是否让模型始终面朝当面目标的方向,拐弯的地方会自动旋转模型 //如果你发现你的模型在寻路的时候始终都是一个方向那么一定要打开这个 args.Add("orienttopath",true); //让模型开始寻路 iTween.MoveTo(gameObject,args); } void OnDrawGizmos() { //在scene视图中绘制出路径与线 iTween.DrawLine(paths, Color.yellow); iTween.DrawPath(paths, Color.red); } // Update is called once per frame void Update () { } }
然后将脚本拖到黄色方块上,然后在Inspector可以看见
然后将路径依次放入Paths中即可
运行就可以看见黄色方块沿着规定好的路径移动了。
由于我不会做gif,就截几个图看看吧。
同时游戏场景中物体移动的路线也标了出来。