Class ConstantPath Extends Path

Public

Finds all nodes within a specified distance from the start.

This class will search outwards from the start point and find all nodes which it costs less than EndingConditionDistance.maxGScore to reach, this is usually the same as the distance to them multiplied with 1000.

The path can be called like: // Here you create a new path and set how far it should search.
ConstantPath cpath = ConstantPath.Construct(transform.position, 20000, null);
AstarPath.StartPath(cpath);

// Block until the path has been calculated. You can also calculate it asynchronously
// by providing a callback in the constructor above.
cpath.BlockUntilCalculated();

// Draw a line upwards from all nodes within range
for (int i = 0; i < cpath.allNodes.Count; i++) {
Debug.DrawRay((Vector3)cpath.allNodes[i].position, Vector3.up, Color.red, 2f);
}
When the path has been calculated, all nodes it searched will be stored in the variable ConstantPath.allNodes (remember that you need to cast it from Path to ConstantPath first to get the variable).

This list will be sorted by the cost to reach that node (more specifically the G score if you are familiar with the terminology for search algorithms).

A* Pro Feature:

This is an A* Pathfinding Project Pro feature only. This function/class/variable might not exist in the Free version of the A* Pathfinding Project or the functionality might be limited.
The Pro version can be bought here

Public Static Methods

Construct (start, maxGScore, callback=null)

Constructs a ConstantPath starting from the specified point.

Public Static

Public Variables

FloodingPath
Public
allNodes

Contains all nodes the path found.

Public
endingCondition

Determines when the path calculation should stop.

Public
originalStartPoint
Public
startNode
Public
startPoint
Public

Inherited Public Members

BlockUntilCalculated ()

Blocks until this path has been calculated and returned.

Public
CanTraverse (node)

Returns if the node can be traversed.

Public
Claim (o)

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

Public
CompleteState

Current state of the path.

Public
Error ()

Aborts the path because of an error.

Public
FailWithError (msg)

Causes the path to fail and sets errorLog to msg.

Public
FloodingPath

True for paths that want to search all nodes and not jump over nodes as optimizations.

Public
GetConnectionSpecialCost (a, b, currentCost)

May be called by graph nodes to get a special cost for some connections.

Public
GetTagPenalty (tag)

Returns penalty for the given tag.

Public
GetTotalLength ()

Total Length of the path.

Public
GetTraversalCost (node)

Returns the cost of traversing the given node.

Public
IsDone ()

True if this path is done calculating.

Public
PipelineState

Returns the state of the path in the pathfinding pipeline.

Public
Release (o, silent=…)

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

Public
WaitForPath ()

Waits until this path has been calculated and returned.

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

Private/Protected Members

CalculateHScore (node)

Estimated cost from the specified node to the target.

Internal
CalculateStep (targetTick)

Calculates the until it is complete or the time has progressed past targetTick.

Protected
Cleanup ()

Always called after the path has been calculated.

Protected
DebugString (logMode)

Returns a string with information about it.

Protected
DebugStringPrefix (logMode, text)

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

Protected
DebugStringSuffix (logMode, text)

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

Protected
GetHTarget ()
Protected
Initialize ()

Initializes the path.

Protected
OnEnterPool ()

Called when the path enters the pool.

Protected
Prepare ()

Called before the path is started.

Protected
PrepareBase (pathHandler)

Prepares low level path variables for calculation.

Protected
Reset ()

Reset the path to default values.

Protected
ReturnPath ()

Calls callback to return the calculated path.

Protected
Setup (start, maxGScore, callback)

Sets up a ConstantPath starting from the specified point.

Protected
Trace (from)

Traces the calculated path from the end node to the start.

Protected
completeState

Backing field for CompleteState.

Protected
currentR

The node currently being processed.

Protected
hTarget

Target to use for H score calculations.

Protected
hTargetNode

Target to use for H score calculation.

Protected
hasBeenReset

True if the Reset function has been called.

Protected
internalTagPenalties

The tag penalties that are actually used.

Protected
manualTagPenalties

Tag penalties set by other scripts.

Protected
next

Internal linked list implementation.

Internal
pathHandler

Data for the thread calculating this path.

Protected