PathEngine home | previous: | next: |
Generates a representation of (expanded) unobstructed space boundaries for the specified agent shape, on this mesh.
void generateUnobstructedSpaceFor(const iShape& shape, bool combine, const char *const* options); |
shape | The shape for which unobstructed space should be generated. | ||
combine |
Controls whether unobstructed space boundary elements are combined into a single boundary representation. This must be set if generating additional preprocess for pathfinding or connected region queries. | ||
options |
This parameter enables optional attributes to be passed in to control aspects of the unobstructed space generation, if special behaviour is desired.
If special bevaviour is desired, then
see If no special behaviour is desired then you can just pass zero in for this parameter, to indicate no attributes. |
Unobstructed space must not already be present for the shape on this mesh.
In most cases (except when using the unpreprocess collision queries feature), preprocess needs to be generated in order to make queries about collision or movement possibilities for a given shape.
This preprocess is then based on a minkowski expansion of the external edges of the mesh by the specified agent shape, i.e. an 'unobstructed space' for the agent origin.
At a minimum this enables fast point and line collision queries
(based on just the coordinates of the agent origin),
but additional preprocess information can then be added, if necessary, to support
connectivity checking and pathfinding queries.
(See
You can avoid the overhead of generating unobstructed space at runtime by using
NOTE: Unobstructed space generation is for queries against a shape as an 'agent shape',
and does not need to be generated for a shape in order for that shape
to be placed as an obstruction.
Obstruction shapes can also be moved by removing and replacing at a new position without
preprocess being required.
Multithreading details: Base mesh preprocess generation operations are non-blocking between shapes,
so preprocess can be generated for multiple shapes simultaneously.
(See
void generateUnobstructedSpaceFor(Shape shape, bool combine, string[] options); |
Documentation for PathEngine release 6.04 - Copyright © 2002-2024 PathEngine | next: |