Unity3D——自动寻找路径(插件iTween)

在我们的单击游戏当中,这个是比较常见的,比如赛车比赛中其他的车辆可以采用这种方式,这就是为什么敌人总是的道路为什么总是那么顺畅的原因吧!呵呵。。。当然这只是个人猜想哈!至于到底是不是这么干的,改天研究一个才知道!ok,好啦!废话不多说啦!我们开始吧!

首先这是一个插件的功劳所以我们第一要做的就是导入该插件!相信这个方法已经很熟悉了吧!

Unity3D——自动寻找路径(插件iTween)_第1张图片

呵呵。。。然后在工程视图中会看到!

Unity3D——自动寻找路径(插件iTween)_第2张图片

导入完成之后我们就要布设场景啦!这里用一个目前在网络上用的比较多的场景!

Unity3D——自动寻找路径(插件iTween)_第3张图片

用了哪些组件大家一看下图就知道啦!

Unity3D——自动寻找路径(插件iTween)_第4张图片

这样组件和场景我们都完成啦!下面要通过代码来实现,这个自动寻路的基本功能!

using UnityEngine;
using System.Collections;

public class loadway : MonoBehaviour {

	//paths是我们的路径点,一个一个的拼接起来构成最终的路径
	public Transform[] paths;
	void Start () {
		Hashtable args = new Hashtable();//哈希表
		//设置路径点
		args.Add("path",paths);
		//设置线性效果
		args.Add("easeType",iTween.EaseType.linear);
		//设置速度
		args.Add("speed",10f);
		//移动的整体时间
		//args.Add("time",5f);
		//移动过程中面始终朝向一点
		args.Add("looktarget",Vector3.zero);
		//是否从原始位置走到第一个点的位置
		args.Add("movetopath",true);
		//延迟
		args.Add("delay",0.1f);
		//循环类型
		args.Add("loopType","pingpong");//有none,loop,pingpong这三种
		//让模型当面向着跑去的方向
		args.Add("orienttopath",true);
		
		iTween.MoveTo(gameObject,args);
	
	}
		
	void OnDrawGizmos()//绘制
	{
		iTween.DrawLine(paths,Color.yellow);
		iTween.DrawPath(paths,Color.red);
	}
}

将这个cs文件拖入第三人物控制器就可以实现啦!由于目前还没有时间去 研究底层所以还不能给大家什么强悍的知识,等我分析透了再和大家分享!


下面提供下这个插件的压缩包iTween;

时间不早啦!早点休息!

你们的支持是我最大的动力!谢谢!

你可能感兴趣的:(Unity3D,C#,脚本)