mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-01-20 04:34:48 +00:00
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:
parent
86e0e67496
commit
f97dced4a7
|
|
@ -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();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -122,6 +122,7 @@ private:
|
|||
SimObjectPtr<SceneObject> object;
|
||||
/// Distance at whcih to follow.
|
||||
F32 radius;
|
||||
Point3F lastPos;
|
||||
/// Default constructor.
|
||||
FollowData() : object(NULL)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in a new issue