followobject position caching

re-use the position of an object we're following (within reason) so we're not constantly regenning a path.
This commit is contained in:
Azaezel 2015-07-17 03:34:22 -05:00
parent 86e0e67496
commit f97dced4a7
2 changed files with 5 additions and 0 deletions

View file

@ -831,11 +831,15 @@ void AIPlayer::followObject(SceneObject *obj, F32 radius)
if(!isServerObject())
return;
if ((mFollowData.lastPos - obj->getPosition()).len()<mMoveTolerance)
return;
if(setPathDestination(obj->getPosition()))
{
clearCover();
mFollowData.object = obj;
mFollowData.radius = radius;
mFollowData.lastPos = obj->getPosition();
}
}

View file

@ -122,6 +122,7 @@ private:
SimObjectPtr<SceneObject> object;
/// Distance at whcih to follow.
F32 radius;
Point3F lastPos;
/// Default constructor.
FollowData() : object(NULL)
{