Attach this script to any obstacle with a collider to enable dynamic updates of the graphs around it.
More...
Attach this script to any obstacle with a collider to enable dynamic updates of the graphs around it.
When the object has moved a certain distance (or actually when it's bounding box has changed by a certain amount) defined by updateError it will call AstarPath.UpdateGraphs and update the graph around it.
Make sure that any children colliders do not extend beyond the bounds of the collider attached to the GameObject that the DynamicGridObstacle component is attached to since this script only updates the graph using the bounds of the collider on the same GameObject.
- Note
- This script only works with GridGraph, PointGraph and LayerGridGraph
- See Also
- AstarPath.UpdateGraphs
-
graph-updates
|
float | checkTime = 0.2F |
| Time in seconds between bounding box checks.
|
|
float | updateError = 1 |
| The minimum change in world units along one of the axis of the bounding box of the collider to trigger a graph update.
|
|
|
static float | BoundsVolume (Bounds b) |
| Volume of a Bounds object.
|
|
|
Collider | col |
| Collider to get bounds information from.
|
|
float | lastCheckTime = -9999 |
|
Bounds | prevBounds |
| Bounds of the collider the last time the graphs were updated.
|
|
bool | prevEnabled |
| True if the collider was enabled last time the graphs were updated.
|
|
Quaternion | prevRotation |
| Rotation of the collider the last time the graphs were updated.
|
|
Transform | tr |
| Cached transform component.
|
|
static float BoundsVolume |
( |
Bounds |
b | ) |
|
|
staticprivate |
Volume of a Bounds object.
X*Y*Z
Update the graphs around this object.
- Note
- The graphs will not be updated immediately since the pathfinding threads need to be paused first. If you want to guarantee that the graphs have been updated then call AstarPath.active.FlushGraphUpdates() after the call to this method.
Revert graphs when destroyed.
When the DynamicObstacle is destroyed, a last graph update should be done to revert nodes to their original state
Collider to get bounds information from.
float lastCheckTime = -9999 |
|
private |
Bounds of the collider the last time the graphs were updated.
True if the collider was enabled last time the graphs were updated.
Rotation of the collider the last time the graphs were updated.
Cached transform component.
The minimum change in world units along one of the axis of the bounding box of the collider to trigger a graph update.
The documentation for this class was generated from the following file:
- /Users/arong/Unity/a-pathfinding-project/Assets/AstarPathfindingProject/ExampleScenes/ExampleScripts/DynamicGridObstacle.cs