SNavMeshAgent
Index
Functions Index
float GetAreaCost (int areaIndex)
void Move (SVector movement)
void Resume ()
void SetAreaCost (int areaIndex, float cost)
void Stop ()
void SetDestination (SVector position)
void Warp (SVector position)
Properties Index
bool Enabled get set
float Accelleration get set
float AngularSpeed get set
int AreaMask get set
bool AutoRepath get set
bool AutoBraking get set
bool AutoTraverseOffMeshLink get set
int AvoidancePriority get set
float BaseOffset get set
SVector DesiredVelocity get
SVector Destination get set
bool HasPath get
float Height get set
bool IsOnNavMesh get
bool IsOnOffMeshLink get
bool IsPathStale get
SVector NextPosition get set
SVector PathEndPosition get
bool PathPending get
float Radius get set
float RemainingDistance get
float Speed get set
SVector SteeringTarget get
float StoppingDistance get set
bool UpdatePosition get set
bool UpdateRotation get set
SVector Velocity get
SGameObject GameObject get
Functions
GetAreaCost
float GetAreaCost (int areaIndex)
Function Description
floatCost = Space.Host.ExecutingObject.NavMeshAgent.GetAreaCost(1)Move
void Move (SVector movement)
Apply relative movement to current position.
Space.Host.ExecutingObject.NavMeshAgent.Move(Vector.New(2,0,0))Resume
void Resume ()
Resume the NavMesh agent.
Space.Host.ExecutingObject.NavMeshAgent.Resume()agentobject = Space.Scene.Find("Cube")
agent = agentobject.NavMeshAgent
if agent == nil then
agent = Space.Scene.Find("Cube").AddNavMeshAgent()
end
counts = 0
--stop first, then resume.
function StopAndResume()
counts = counts +1
if counts > 10 then
agent.Stop()
end
if counts > 50 then
agent.Resume()
end
end
agentobject.SubscribeToEvents()
agentobject.OnUpdate(StopAndResume)
agent.Destination = Space.Scene.Find("TargetTransform").WorldPosition
--set destination.SetAreaCost
void SetAreaCost (int areaIndex, float cost)
Sets the cost for traversing over areas of the area type.
Space.Host.ExecutingObject.NavMeshAgent.SetAreaCost(1, 10.0)Stop
void Stop ()
To stop the NavMesh agent.
Space.Host.ExecutingObject.NavMeshAgent.Stop()SetDestination
void SetDestination (SVector position)
Set or update the destination.
Space.Host.ExecutingObject.NavMeshAgent.SetDestination(Vector.New(10,0,0))Warp
void Warp (SVector position)
Warp to the position you want, also you can set agent's world position and vector to make this act as Move(SVector position).
Space.Host.ExecutingObject.NavMeshAgent.Warp(Vector.New(10,0,0))Properties
Enabled
bool Enabled get set
Enable or disable this component.
Space.Host.ExecutingObject.NavMeshAgent.Enabled = false--clicking this object will Enable/Disable it's Nav Mesh Agent component
thisGameObject = Space.Host.ExecutingObject
component = thisGameObject.NavMeshAgent
OnClick = function()
component.Enabled = not component.Enabled
end
thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)Accelleration
float Accelleration get set
The maximum acceleration of an agent as it follows a path.
Space.Host.ExecutingObject.NavMeshAgent.Accelleration = 60AngularSpeed
float AngularSpeed get set
Maximum turning speed in while following a path.
Space.Host.ExecutingObject.NavMeshAgent.AngularSpeed = 60AreaMask
int AreaMask get set
Specifies which NavMesh area is passable.
Space.Host.ExecutingObject.NavMeshAgent.AreaMask = 3AutoRepath
bool AutoRepath get set
Set the agent attempt to acquire a new path if the existing path becomes invalid.
Space.Host.ExecutingObject.NavMeshAgent.AutoRepath = falseAutoBraking
bool AutoBraking get set
Set the agent brake automatically to avoid overshooting the destination point.
Space.Host.ExecutingObject.NavMeshAgent.AutoBraking = falseAutoTraverseOffMeshLink
bool AutoTraverseOffMeshLink get set
Set the agent move across OffMeshLinks automatically.
Space.Host.ExecutingObject.NavMeshAgent.AutoTraverseOffMeshLink = falseAvoidancePriority
int AvoidancePriority get set
The avoidance priority level.
Space.Host.ExecutingObject.NavMeshAgent.AvoidancePriority = 10BaseOffset
float BaseOffset get set
The relative vertical displacement of the GameObject.
Space.Host.ExecutingObject.NavMeshAgent.BaseOffset = 3DesiredVelocity
SVector DesiredVelocity get
The desired velocity of the agent including any potential contribution from avoidance.
vectorVelocity = Space.Host.ExecutingObject.NavMeshAgent.DesiredVelocityDestination
SVector Destination get set
The desired velocity of the agent including any potential contribution from avoidance.
Space.Host.ExecutingObject.NavMeshAgent.Destination = Vector.New(10,0,0)HasPath
bool HasPath get
Does the agent currently have a path?
hasPath = Space.Host.ExecutingObject.NavMeshAgent.HasPathHeight
float Height get set
The height of the agent for purposes of passing under obstacles, etc.
Space.Host.ExecutingObject.NavMeshAgent.Height = 5IsOnNavMesh
bool IsOnNavMesh get
Is the agent currently bound to the navmesh?
isOn = Space.Host.ExecutingObject.NavMeshAgent.IsOnNavMeshIsOnOffMeshLink
bool IsOnOffMeshLink get
Is the agent currently positioned on an OffMeshLink?
isOnOff = Space.Host.ExecutingObject.NavMeshAgent.IsOnOffMeshLinkIsPathStale
bool IsPathStale get
Is the current path stale?
isStale = Space.Host.ExecutingObject.NavMeshAgent.IsPathStaleNextPosition
SVector NextPosition get set
Get or set the simulation position of the navmesh agent.
Space.Host.ExecutingObject.NavMeshAgent.NextPosition = Vector.New(10, 0, 0)PathEndPosition
SVector PathEndPosition get
End positon of navigation.
vectorPathEndPos = Space.Host.ExecutingObject.NavMeshAgent.PathEndPositionPathPending
bool PathPending get
Is a path in the process of being computed but not yet ready?
isPending = Space.Host.ExecutingObject.NavMeshAgent.PathPendingRadius
float Radius get set
The avoidance radius for the agent.
Space.Host.ExecutingObject.NavMeshAgent.Radius = 5RemainingDistance
float RemainingDistance get
The distance between the agent's position and the destination on the current path.
vectorDist = Space.Host.ExecutingObject.NavMeshAgent.RemainingDistanceSpeed
float Speed get set
Maximum movement speed when following a path.
Space.Host.ExecutingObject.NavMeshAgent.Speed = 20SteeringTarget
SVector SteeringTarget get
Get the current steering target along the path.
vectorSteeringTarget = Space.Host.ExecutingObject.NavMeshAgent.SteeringTargetStoppingDistance
float StoppingDistance get set
Stop within this distance from the target position.
Space.Host.ExecutingObject.NavMeshAgent.StoppingDistance = 2UpdatePosition
bool UpdatePosition get set
Get or set whether the transform position is synchronized with the simulated agent position.
Space.Host.ExecutingObject.NavMeshAgent.UpdatePosition = trueUpdateRotation
bool UpdateRotation get set
Should the agent update the transform orientation?
Space.Host.ExecutingObject.NavMeshAgent.UpdateRotation = trueVelocity
SVector Velocity get
access the current velocity of the NavMeshAgent component, or set a velocity to control the agent manually.
vectorVelocity = Space.Host.ExecutingObject.NavMeshAgent.VelocityGameObject
SGameObject GameObject get
Property Description
theGameObject = Space.Host.ExecutingObject.NavMeshAgent.GameObject