|
A* Pathfinding Project
3.1.4
The A* Pathfinding Project for Unity 3D
|
Simplifies a path using raycasting. More...
Inheritance diagram for RaycastModifier:
Collaboration diagram for RaycastModifier:Public Member Functions | |
| override void | Apply (Path p, ModifierData source) |
| Main Post-Processing function. | |
| bool | ValidateLine (Node n1, Node n2, Vector3 v1, Vector3 v2) |
Public Member Functions inherited from MonoModifier | |
| virtual Vector3[] | Apply (Node[] path, Vector3 start, Vector3 end, int startIndex, int endIndex, NavGraph graph) |
| virtual Vector3[] | Apply (Vector3[] path, Vector3 start, Vector3 end) |
| virtual void | ApplyOriginal (Path p) |
| void | Awake () |
| Alerts the Seeker that this modifier exists. | |
| void | OnDestroy () |
| void | OnDisable () |
| void | OnEnable () |
| virtual void | PreProcess (Path p) |
Public Member Functions inherited from IPathModifier | |
| void | Apply (Path p, ModifierData source) |
| void | ApplyOriginal (Path p) |
| void | PreProcess (Path p) |
Public Attributes | |
| int | iterations = 2 |
| LayerMask | mask = -1 |
| Vector3 | raycastOffset = Vector3.zero |
| bool | subdivideEveryIter = false |
| Use the exact points used to query the path. | |
| bool | thickRaycast = false |
| float | thickRaycastRadius = 0 |
| bool | useGraphRaycasting = false |
| Use raycasting on the graphs. | |
| bool | useRaycasting = true |
Public Attributes inherited from MonoModifier | |
| int | priority = 0 |
| Higher priority modifiers are executed first. | |
| Seeker | seeker |
Properties | |
| override ModifierData | input [get] |
| override ModifierData | output [get] |
Properties inherited from MonoModifier | |
| abstract ModifierData | input [get] |
| abstract ModifierData | output [get] |
| int | Priority [get, set] |
Properties inherited from IPathModifier | |
| ModifierData | input [get] |
| ModifierData | output [get] |
| int | Priority [get, set] |
Static Private Attributes | |
| static List< Vector3 > | nodes |
| To avoid too many memory allocations. | |
Simplifies a path using raycasting.
This modifier will try to remove as many nodes as possible from the path using raycasting (linecasting) to validate the node removal. Either graph raycasts or Physics.Raycast
|
staticprivate |
To avoid too many memory allocations.
An array is kept between the checks and filled in with the positions instead of allocating a new one every time.
| bool subdivideEveryIter = false |
Use the exact points used to query the path.
If false, the start and end points will be snapped to the node positions.
| bool useGraphRaycasting = false |
Use raycasting on the graphs.
Only currently works with GridGraph and NavmeshGraph and RecastGraph.