... | ... | @@ -21,7 +21,7 @@ Don't forget to set up the Waypoint Movement (selecting a Waypoint Group and ord |
|
|
|
|
|
## How it works
|
|
|
|
|
|
The parent will simply traverse all the Waypoints, but for the children we need to create additional points for navigation. If you enable *DrawDebugSpheres* you will see additional points that are calculated for every child around every waypoint, depending on last and next waypoint, group formation and offset.
|
|
|
The parent will simply traverse all the Waypoints, but for the children we need to create additional points for navigation. If you enable *DrawDebugSpheres* you will see additional points that are calculated for every child around every Waypoint, depending on last and next Waypoint, group formation and offset.
|
|
|
|
|
|
#### Abreast
|
|
|
|
... | ... | @@ -37,21 +37,21 @@ If a child is on the outside path the Algorithm creates the following points: |
|
|
| SpeedUpPoint | On the outside path the child needs to walk a greater distance than the parent, therefore we introduce a point at which the child starts to walk faster than the parent. The walking speed is raised accordingly, so that the child arrives at *FirstPointOfNextPath* at the same time the parent arrives at the Waypoint. This value is however bound to only be a certain amount higher than the parents walking speed to prevent big jumps in speed. |
|
|
|
| LastPointOfCurrentPath| Last point in the current walking direction |
|
|
|
| IntermediatePoint | Additional point to make walking path smoother for big angles |
|
|
|
| FirstPointOfNextPath | Last point that is calculated for the current waypoint. This point "points" towards the next waypoint and is therefore the first point of the path towards the next waypoint|
|
|
|
| FirstPointOfNextPath | Last point that is calculated for the current Waypoint. This point "points" towards the next Waypoint and is therefore the first point of the path towards the next Waypoint|
|
|
|
|
|
|
|
|
|
**2. Inside Path**
|
|
|
On the inside path the Algorithm just creates the *LastPointOfCurrentPath* and adjusts the walking speed such that the child arrives there at the same time the parent arrives at the waypoint.
|
|
|
On the inside path the Algorithm just creates the *LastPointOfCurrentPath* and adjusts the walking speed such that the child arrives there at the same time the parent arrives at the Waypoint.
|
|
|
|
|
|

|
|
|
|
|
|
**Big angles**
|
|
|
TODO If the angle from the last waypoint towards the next waypoint is very large (close to 180 degree).
|
|
|
TODO If the angle from the last Waypoint towards the next Waypoint is very large (close to 180 degree).
|
|
|
|
|
|
TODO The Movement of childs is always triggered by the parent. In combination with the speed adjustments of the child VHs, it is guaranteed that the formation is always maintained.
|
|
|
|
|
|
#### InLine
|
|
|
TODO This formation is handled in a very simple way so far. The only additional points that are calculated for the child are around the first waypoint. Then every child will walk towards the next waypoint. Therefore, the formation is only formed once around the first waypoint. Distances between child VHs will not be strictly maintained.
|
|
|
TODO This formation is handled in a very simple way so far. The only additional points that are calculated for the child are around the first Waypoint. Then every child will walk towards the next Waypoint. Therefore, the formation is only formed once around the first Waypoint. Distances between child VHs will not be strictly maintained.
|
|
|
|
|
|
## Future implementations
|
|
|
|
... | ... | @@ -63,6 +63,8 @@ Expand the *Child VH* Map to allow 2 float parameters. The offset in x- and y-di |
|
|
|
|
|
If no VH is specified as key in the *Child VH* Map automatically spawn one at the specified offset.
|
|
|
|
|
|
##
|
|
|
An example implementation can be found on the *GroupMovementTest* Map.
|
|
|
--
|
|
|
|
|
|
Next steps:
|
... | ... | |