Class Path Extends IPathInternals

Public Abstract

Base class for all path types.

Inner Types

Parameters to OpenCandidateConnectionBurst.

Public Methods

Blocks until this path has been calculated and returned.

CanTraverse (...)

Returns if the...

Claim (o)

Increase the reference count on this path by 1 (for pooling).

Error ()

Aborts the path because of an error.

Causes the path to fail and sets errorLog to msg.

Returns penalty for the given tag.

Total Length of the path.

Returns the cost of traversing the given node.

IsDone ()

True if this path is done calculating.

OnVisitNode (pathNode, hScore, gScore)

Called for every node that the path visits.

OpenCandidateConnection (parentPathNode, targetPathNode, parentG, connectionCost, fractionAlongEdge, targetNodePosition)

Opens a connection between two nodes during the A* search.

OpenCandidateConnectionsToEndNode (position, parentPathNode, parentNodeIndex, parentG)

Open a connection to the temporary end node if necessary.

Release (o, silent=…)

Reduces the reference count on the path by 1 (pooling).

ShouldConsiderPathNode (pathNodeIndex)

True if this path node might be worth exploring.

SkipOverNode (pathNodeIndex, parentNodeIndex, fractionAlongEdge, hScore, gScore)

Paths use this to skip adding nodes to the search heap.

UseSettings (settings)

Copies the given settings into this path.

Waits until this path has been calculated and returned.

Public Static Methods

OpenCandidateConnectionBurst (pars, heap, heuristicObjective)

Burst-compiled internal implementation of OpenCandidateConnection.

Public Variables

CompleteState

Current state of the path.

Public
PipelineState

Returns the state of the path in the pathfinding pipeline.

Public
callback

Callback to call when the path is complete.

Public
duration

How long it took to calculate this path in milliseconds.

Public
enabledTags

Which graph tags are traversable.

Public
error

If the path failed, this is true.

Public
errorLog

Additional info on why a path failed.

Public
heuristic

Determines which heuristic to use.

Public
heuristicScale

Scale of the heuristic values.

Public
immediateCallback

Immediate callback to call when the path is complete.

Public
nnConstraint

Constraint for how to search for nodes.

Public
path

Holds the path as a GraphNode list.

Public
pathID

ID of this path.

Public
searchedNodes

Number of nodes this path has searched.

Public
tagPenalties

Penalties for each tag.

Public
traversalProvider

Provides additional traversal information to a path request.

Public
vectorPath

Holds the (possibly post-processed) path as a Vector3 list.

Public

Public Static Variables

MarkerOpenCandidateConnectionsToEnd
Public Static Readonly
MarkerTrace
Public Static Readonly

Private/Protected Members

Threadsafe increment of the state.

CalculateStep (targetTick)

Cleanup ()

DebugString (logMode)

...

DebugStringPrefix (logMode, text)

Writes text shared for all overrides of DebugString to the string builder.

DebugStringSuffix (logMode, text)

Writes text shared for all overrides of DebugString to the string builder.

Performs some error checking.

GetNearest (point)

Closest point and node which is traversable by this path.

OnFoundEndNode (pathNode, hScore, gScore)

Called when a valid node has been found for the end of the path.

Called when there are no more nodes to search.

PathHandler
Private
Pooled

True if the path is currently pooled.

Private
Prepare ()

PrepareBase (...)

Reset ()

Trace (fromPathNodeIndex, [reverse])

ZeroTagPenalties

List of zeroes to use as default tag penalties.

Internal Static Readonly
claimed

List of claims on this path with reference objects.

Private
completeState

Backing field for CompleteState.

Protected
hTargetNode

Target to use for H score calculation.

Protected
hasBeenReset

True if the Reset function has been called.

Protected
heuristicObjective

Target to use for H score calculations.

Protected
heuristicObjectiveInternal
Internal
internalTagPenalties

The tag penalties that are actually used.

Protected
pathHandler

Data for the thread calculating this path.

Protected
releasedNotSilent

True if the path has been released with a non-silent call yet.

Private