Navigation

Attached to a Scene a navigation component will act as a building block for all pathfinding requests and queries. It maintains for you navigation maps and common obstacles. Using the navigation API you can create offline a navigation mesh that will be used for future map creations and real-time updates.

All navigation start with a basic list of abilities that will dictate what type of movements can be performed. This set of Ability is then propagated to all Map maintained by the structure which in turn have a direct impact on the subsequent navigation queries evaluated at runtime.

See Also

Static Variables


Name Description
ability_count Total amount of possible Ability used to navigate Map.
map_count Amount of Map currently available for Navigation.
obstacle_count Total amount of Obstacle that can affect a navigation Map.
scene Parent Scene that maintains the active Navigation.
geometry Geometry information that are used to create the Navigation mesh.
ability_default Reference to the basic Ability necessary to travel around Map.

Variables


Name Description
cell_size Specify the size of each cell.
cell_height Controls the maximum height of each cell.
walkable_slope_angle Maximum inclination (in degrees) of the slope all agents size should be able to climb.
display_offset Debug draw offset used by the editor to avoid Z-fighting in the viewport.
draw_mode Bit mask formed from DrawMode values used to debug draw the Navigation (editor only).

Functions


Name Description
Build Build the Navigation mesh using the active config. and the current drawable object selection from its parent Scene.
Clear Clear the Navigation mesh.
AddAbility Create a new Ability.
GetAbility Retrieve an existing Navigation Ability using its name as key.
GetAbilityAt Retrieve an Ability reference by index.
GetAbilityIndex Return the internal list index of an Ability.
RemoveAbility Remove a specific Ability.
RemoveAbilityAt Remove an Ability using its index as key.
SetDefaultAbility Set the default Ability that all agent should be able to perform in order to find paths on a Map.
SetDefaultAbilityAt Helper to set the default Ability using an index.
AddMap Create a new Navigation Map.
GetMap Retrieve an existing Map using its name as key.
GetMapAt Retrieve a Map using its internal index.
GetMapIndex Return the internal index of a specific Map.
RemoveMap Remove a specific Map from the active Navigation.
RemoveMapAt Remove a Map by index.
SwapMap Remove a specific Map from the active Navigation.
AddObstacle Create a new Obstacle to apply on one or more Map.
GetObstacle Helper function to retrieve an Obstacle using by name.
GetObstacleAt Retrieve an Obstacle using its index as key.
GetObstacleAtLocation Retrieve an Obstacle located at a specific position.
GetObstacleIndex Return the index of a specific Obstacle.
RemoveObstacle Remove a specific Obstacle from the active Navigation.
RemoveObstacleAt Remove an Obstacle by index.
Sync Manually perform a synchronization steps to ensure that the tile cache of each Map have been updated.
Update Force the update of all maps.
UpdateObstacles Manually force the update of all obstacles.

DrawMode


Debug draw mode flags used by the editor to visualize the different elements that are part of an existing Navigation structure.

  • fDrawMesh: Draw the navigation mesh.
  • fDrawMaps: Draw all maps (individual Map visibility can be turned on/off, see the Map page).
  • fDrawZones: Draw all zones for each Map.
  • fDrawObstacles: Draw all obstacles.
  • fDrawConnections: Draw all connections.
  • fDrawZonesNames: Draw the name of each Zone.
  • fDrawObstaclesNames: Draw the name of each Obstacle.
  • fDrawConnectionsNames: Draw the name of each Connection.
  • fDrawEnabled: Global flag that enables or disable the Navigation debug draw.




NRG - API 2022.4.384543 - Fri Nov 4 2022
Copyright © 2022 nrgcore.com. All Rights Reserved. Terms of Service - Privacy Policy - EULA