A* Pathfinding Project
4.0.11
The A* Pathfinding Project for Unity 3D
|
Pathfinding | |
Examples | |
AstarSmoothFollow2 | Smooth Camera Following |
BezierMover | Moves an object along a spline |
DoorController | Example script used in the example scenes |
ExampleMover | |
GroupController | RVO Example Scene Unit Controller |
LightweightRVO | Lightweight RVO Circle Example |
LocalSpaceRichAI | RichAI for local space (pathfinding on moving graphs) |
MineBotAI | AI controller specifically made for the spider robot |
ObjectPlacer | Small sample script for placing obstacles |
PathTypesDemo | Demos different path types |
ProceduralWorld | Example script for generating an infinite procedural world |
ProceduralPrefab | |
ProceduralTile | |
RVOAgentPlacer | Places ROV agents in circles |
RVOExampleAgent | Example movement script for using RVO |
Legacy | |
LegacyAIPath | AI for following paths |
LegacyAIPathEditor | |
LegacyEditorHelper | |
LegacyRichAI | Advanced AI for navmesh based graphs |
LegacyRichAIEditor | |
LegacyRVOController | RVO Character Controller |
LegacyRVOControllerEditor | |
Recast | |
RecastMeshGatherer | |
CapsuleCache | |
RVO | Local avoidance related classes |
Sampled | |
Agent | Internal agent for the RVO system |
VO | Velocity Obstacle |
VOBuffer | Very simple list |
IAgent | Exposes properties of an Agent class |
Line | ORCA Line |
ObstacleVertex | One vertex in an obstacle |
RVOController | RVO Character Controller |
RVOControllerEditor | |
RVONavmesh | Adds a navmesh as RVO obstacles |
RVOObstacle | Base class for simple RVO colliders |
RVOQuadtree | Quadtree for quick nearest neighbour search of rvo agents |
Node | Node in a quadtree for storing RVO agents |
QuadtreeQuery | |
RVOSimulator | Unity front end for an RVO simulator |
RVOSquareObstacle | Square Obstacle for RVO Simulation |
Simulator | Local Avoidance Simulator |
Worker | |
WorkerContext | |
Serialization | |
AstarSerializer | Handles low level serialization and deserialization of graph settings and data |
GraphMeta | Metadata for all graphs included in serialization |
GraphSerializationContext | Holds information passed to custom graph serializers |
JsonMemberAttribute | |
JsonOptInAttribute | |
SerializeSettings | Holds settings for how graphs should be serialized |
TinyJsonDeserializer | A very tiny json deserializer |
TinyJsonSerializer | A very tiny json serializer |
Util | |
ArrayPool< T > | Lightweight Array Pool |
ArrayPoolExtensions | |
Checksum | Calculates checksums of byte arrays |
Draw | Helper methods for drawing gizmos and debug lines |
GraphGizmoHelper | |
GraphTransform | Defines a transformation from graph space to world space |
GridLookup< T > | Holds a lookup datastructure to quickly find objects inside rectangles |
Item | |
Root | |
Guid | Simple implementation of a GUID |
IAstarPooledObject | |
IMovementPlane | Transforms to and from world space to a 2D movement plane |
ITransform | Generic 3D coordinate transformation |
ListPool< T > | Lightweight List Pool |
LockFreeStack | Implements a lock free multiple producer - single consumer stack for the Path object |
Memory | Various utilities for handling arrays and memory |
MovementUtilities | |
ObjectPool< T > | Lightweight object Pool for IAstarPooledObject |
ObjectPoolSimple< T > | Lightweight object Pool |
ParallelWorkQueue< T > | Helper for parallelizing tasks |
PathInterpolator | Interpolates along a sequence of points |
RetainedGizmos | Helper for drawing Gizmos in a performant way |
Builder | Helper for drawing gizmos |
Hasher | Combines hashes into a single hash value |
MeshWithHash | |
StackPool< T > | Lightweight Stack Pool |
TileHandler | Utility class for updating tiles of navmesh/recast graphs |
Cut | Internal class describing a single NavmeshCut |
CuttingResult | Internal class representing a mesh which is the result of the CutPoly method |
TileType | A template for a single tile in a navmesh/recast graph |
Voxels | |
CompactVoxelCell | CompactVoxelCell used for recast graphs |
CompactVoxelSpan | CompactVoxelSpan used for recast graphs |
ExtraMesh | Represents a mesh |
LinkedVoxelSpan | |
RasterizationMesh | Represents a mesh which will be rasterized |
Utility | Various utilities for voxel rasterization |
VoxelArea | Stores a voxel field |
VoxelCell | VoxelCell used for recast graphs |
VoxelContour | VoxelContour used for recast graphs |
VoxelContourSet | VoxelContourSet used for recast graphs |
Voxelize | Voxelizer for recast graphs |
VoxelMesh | VoxelMesh used for recast graphs |
VoxelPolygonClipper | Utility for clipping polygons |
VoxelSpan | VoxelSpan used for recast graphs |
WindowsStore | |
WindowsStoreCompatibility | |
ABPath | Basic path, finds the shortest path from A to B |
ABPathEndingCondition | Ending condition which emulates the default one for the ABPath |
AdvancedSmooth | Smoothing by dividing path into turns and straight segments |
ConstantTurn | Constant turning speed |
MaxTurn | Type of turn |
Turn | Represents a turn in a path |
TurnConstructor | Abstract turn constructor |
AIBase | Base class for AIPath and RichAI |
AlternativePath | Applies penalty to the paths it processes telling other units to avoid choosing the same path |
AnimationLink | |
LinkClip | |
AnimationLinkEditor | |
AstarColor | Stores editor colors |
AstarData | Stores the navigation graphs for the A* Pathfinding System |
AstarDebugger | Debugger for the A* Pathfinding Project |
GraphPoint | |
PathTypeDebug | |
AstarEnumFlagAttribute | |
AstarEnumFlagDrawer | |
AstarMath | Utility functions for working with numbers and strings |
AstarPathEditor | |
AstarProfiler | |
ProfilePoint | |
AstarSplines | Contains various spline functions |
AstarUpdateChecker | Handles update checking for the A* Pathfinding Project |
AstarUpdateWindow | |
AstarWorkItem | |
BaseAIEditor | |
BBTree | Axis Aligned Bounding Box Tree |
BBTreeBox | |
BinaryHeap | Binary heap implementation |
Tuple | Item in the heap |
Connection | Represents a connection to another node |
ConstantPath | Finds all nodes within a specified distance from the start |
CustomGraphEditorAttribute | Added to editors of custom graph types |
CustomPath | |
DebugUtility | Helper for drawing debug information for the recast graph |
DynamicGridObstacle | Attach this script to any obstacle with a collider to enable dynamic updates of the graphs around it |
EditorGUILayoutx | Handles fading effects and also some custom GUI functions such as LayerMaskField |
EndingConditionDistance | Target is found when the path is longer than a specified value |
EndingConditionProximity | Ending condition which stops a fixed distance from the target point |
EuclideanEmbedding | Implements heuristic optimizations |
FadeArea | Editor helper for hiding and showing a group of GUI elements |
FleePath | Returns a path heading away from a specified point to avoid |
FloodPath | Floods the area completely for easy computation of any path to a single point |
FloodPathConstraint | Restrict suitable nodes by if they have been searched by a FloodPath |
FloodPathTracer | Traces a path created with the Pathfinding.FloodPath |
Funnel | Implements the funnel algorithm as well as various related methods |
FunnelPortals | Funnel in which the path to the target will be |
PathPart | Part of a path |
FunnelModifier | Simplifies paths on navmesh graphs using the funnel algorithm |
GraphCollision | Handles collision checking for graphs |
GraphEditor | |
GraphEditorBase | Defined here only so non-editor classes can use the target field |
GraphHitInfo | Returned by graph ray- or linecasts containing info about the hit |
GraphModifier | GraphModifier is used for modifying graphs or processing graph data based on events |
GraphNode | Base class for all nodes |
GraphUpdateObject | Represents a collection of settings used to update nodes in a specific region of a graph |
GraphUpdateProcessor | |
GUOSingle | Holds a single update that needs to be performed on a graph |
GraphUpdateScene | Helper class for easily updating graphs |
GraphUpdateSceneEditor | Editor for GraphUpdateScene |
GraphUpdateShape | Defines a shape for a Pathfinding.GraphUpdateObject |
GraphUpdateUtilities | Contains useful functions for updating graphs |
GraphVisualizationUtilities | Contains useful functions for visualizing graphs |
GridGraph | Generates a grid of nodes |
TextureData | Used for using a texture as a source for a grid graph |
GridGraphEditor | |
GridNode | Node used for the GridGraph |
GridNodeBase | Base class for GridNode and LevelGridNode |
GUIUtilityx | Simple GUI utility functions |
INavmesh | |
INavmeshHolder | |
Int2 | Two Dimensional Integer Coordinate Pair |
Int3 | Holds a coordinate in integers |
IntRect | Integer Rectangle |
IPathInternals | Used for hiding internal methods of the Path class |
IPathModifier | Base for all path modifiers |
IRaycastableGraph | |
ITransformedGraph | |
ITraversalProvider | Provides additional traversal information to a path request |
IUpdatableGraph | Graphs which can be updated during runtime |
IWorkItemContext | Interface to expose a subset of the WorkItemProcessor functionality |
LayerGridGraph | Grid Graph, supports layered worlds |
LayerGridGraphEditor | |
LayerGridGraphUpdate | GraphUpdateObject with more settings for the LayerGridGraph |
LevelGridNode | Describes a single node for the LayerGridGraph |
LinkedLevelNode | Internal class used by the LayerGridGraph |
LocalSpaceGraph | Helper for Pathfinding.Examples.LocalSpaceRichAI |
MeshNode | |
MonoModifier | Base class for path modifiers which can be attached to GameObjects |
MultiTargetPath | A path which searches from one point to a number of different targets in one search or from a number of different start points to a single target |
NavGraph | Base class for all graphs |
NavmeshAdd | Adds new geometry to a recast graph |
NavmeshBase | Base class for RecastGraph and NavMeshGraph |
NavmeshClamp | Attach to any GameObject and the object will be clamped to the navmesh |
NavmeshClipper | Base class for the NavmeshCut and NavmeshAdd components |
NavmeshCut | Navmesh cutting is used for fast recast graph updates |
NavmeshCutEditor | |
NavMeshGraph | Generates graphs based on navmeshes |
NavMeshGraphEditor | |
NavmeshTile | |
NNConstraint | Nearest node constraint |
NNInfo | Result of a nearest node query |
NNInfoInternal | Internal result of a nearest node query |
NodeLink | Connects two nodes with a direct connection |
NodeLink2 | Connects two nodes via two intermediate point nodes |
NodeLink3 | Connects two TriangleMeshNodes (recast/navmesh graphs) as if they had shared an edge |
NodeLink3Node | |
ObjImporter | |
meshStruct | |
OptimizationHandler | Helper for enabling or disabling compiler directives |
DefineDefinition | |
Path | Base class for all path types |
PathEndingCondition | Customized ending condition for a path |
PathHandler | Handles thread specific path data |
PathModifier | Base class for path modifiers which are not attached to GameObjects |
PathNNConstraint | A special NNConstraint which can use different logic for the start node and end node in a path |
PathNode | Stores temporary node data for a single pathfinding request |
PathPool | Pools path objects to reduce load on the garbage collector |
PathPool< T > | Pools path objects to reduce load on the garbage collector |
PathProcessor | |
GraphUpdateLock | Prevents pathfinding from running while held |
PathReturnQueue | |
PathThreadInfo | Holds info about one pathfinding thread |
PathUtilities | Contains useful functions for working with paths and nodes |
PointGraph | Basic point graph |
PointGraphEditor | |
PointKDTree | Represents a collection of GraphNodes |
CompareX | |
CompareY | |
CompareZ | |
Node | |
PointNode | Node used for the PointGraph |
Polygon | Utility functions for working with polygons, lines, and other vector math |
Profile | |
Progress | Progress info for e.g a progressbar |
RadiusModifier | Radius path modifier for offsetting paths |
RandomPath | Finds a path in a random direction from the start node |
RaycastModifier | Simplifies a path using raycasting |
RaycastModifierEditor | |
RecastBBTree | Axis Aligned Bounding Box Tree |
RecastBBTreeBox | |
RecastGraph | Automatically generates navmesh graphs based on world geometry |
RecastGraphEditor | Editor for the RecastGraph |
RecastMeshObj | Explicit mesh object for recast graphs |
RecastMeshObjEditor | |
RecastTileUpdate | Updates the recast tile(s) it is in at start, needs RecastTileUpdateHandler |
RecastTileUpdateHandler | Helper for easier fast updates to recast graphs |
RelevantGraphSurface | Pruning of recast navmesh regions |
RichAI | Advanced AI for navmesh based graphs |
RichFunnel | |
RichPath | |
RichPathPart | |
RichSpecial | |
RVONavmeshEditor | |
RVOSimulatorEditor | |
RVOSquareObstacleEditor | |
SeekerEditor | |
SimpleSmoothModifier | Modifier which smooths the path |
SmoothModifierEditor | |
StartEndModifier | Adjusts start and end points of a path |
TagMask | Holds a tagmask |
TargetMover | Moves the target in example scenes |
ThreadControlQueue | Queue of paths to be processed by the system |
QueueTerminationException | |
TileHandlerHelper | Helper for navmesh cut objects |
TriangleMeshNode | Node represented by a triangle |
UnityReferenceHelper | Helper class to keep track of references to GameObjects |
VectorMath | Various vector math utility functions |
VersionedMonoBehaviour | Base class for all components in the package |
WorkItemProcessor | |
IndexedQueue< T > | Similar to Queue<T> but allows random access |
XPath | Extended Path |
AILerp | Linearly interpolating movement script |
AIPath | AI for following paths |
Astar3DButton | |
AstarPath | Core component for the A* Pathfinding System |
BlockManager | Manager for blocker scripts such as SingleNodeBlocker |
TraversalProvider | Blocks nodes according to a BlockManager |
HexagonTrigger | |
ManualRVOAgent | Player controlled character which RVO agents will avoid |
ProceduralGridMover | Moves a grid graph to follow a target |
Seeker | Handles path calls for a single unit |
SingleNodeBlocker | Blocks single nodes in a graph |
TurnBasedAI | |
TurnBasedDoor | |
TurnBasedManager |