DFdou's Blog Life is short,Be yourself.

7kankan11bookekzwС˵Ҫ · uawx鶼Ķ ðƴӢ ޴½
1709/090

AS3-SteeredVehicle.followPath()路径跟随行为分析

Demo:


PS:请点击鼠标左键建立路径点。

路径跟随其实挺简单的,如图:
SteeredVehicle-followPath
只要让机车从第一个航点开始逐个seek下一个航点就可以了。
代码如下:

//路径跟随行为
private var _pathIndex: int = 0;
private var _pathThreshold: Number = 20;
public function followPath (path: Array, loop: Boolean = false):void {
	var wayPoint:Vector2D=path[_pathIndex];
	if (wayPoint==null) {
		return;
	}
	if (_position.dist(wayPoint)<_paththreshold ) {
		if (_pathIndex>=path.length-1) {
			if (loop) {
				_pathIndex=0;
			}
		} else {
			_pathIndex++;
		}
	}
	if (_pathIndex>=path.length-1&&! loop) {
		arrive (wayPoint);
	} else {
		seek (wayPoint);
	}
}

loop判断是否需要循环,pathThreshold是减速区域咯,具体实现逻辑按照图示按部就班就可以了。

Some Random Posts

Comments (0) Trackbacks (0)

No comments yet.


Leave a comment

:zhuang :xizao :wuwu :wenhao :wc :touxiang :shuaya :shuajian :shengtian :paopao :no :meinv :maonv :loveu :leilei :kua :jrjr :dahan :chi :chaocai :byebye


CommentLuv Enabled

No trackbacks yet.