$HEADER

"Navigation mesh" PlugIT

The "Navigation mesh" PlugIT allows the creation of a navigation mesh (navmesh) from a 3D model. This is primarily used for pathfinding, enabling objects or agents to navigate within a predefined space while avoiding obstacles. A navigation mesh simplifies the representation of traversable areas, making it a key component in games, simulations, or any real-time 3D application requiring dynamic pathfinding.

 

Parameters

1

Specifies the 3D model to be used as the base for generating the navigation mesh. This should be a clean and optimized model, with proper topology to ensure effective pathfinding results.

2

If enabled, the PlugIT will also include the child objects of the source object in the navigation mesh generation. This is useful when the model hierarchy is split into smaller parts. Sons with a physics mass will be used as a dynamic obstacle. To create passages between two areas, you can create a node containing the word "connection", then a second, child of the first, for the destination. If the name of the connection contains the word "oneway" the connection will only work in one direction.

3

Defines the radius of the agents navigating on the mesh. Larger values will account for bigger agents and prevent narrow paths.

4

Specifies the height of the agents, which is important for detecting spaces with sufficient clearance.

5

Sets the maximum slope (in degrees) that agents can traverse. Areas steeper than this value will be marked as non-navigable.

6

Defines the maximum height difference an agent can climb. This is used to determine navigability between two surfaces.

7

Determines the resolution of the grid cells in the navigation mesh. Smaller values provide more detail but require more computation.

8

Specifies the vertical resolution of the navigation mesh. Lower values improve accuracy in complex terrains.

9

Sets the size of tiles in the navigation mesh. Larger tiles reduce processing time but might affect precision.


 

Actions

Get position in radius

Retrieves a random navigable position within a specified radius from a given point. This is useful for directing agents to nearby areas without hardcoding specific coordinates.

Example: Use this action to find a random patrol point near an NPC’s starting location.

Get random position

Generates a random position anywhere within the boundaries of the navigation mesh. Ideal for scenarios where agents need to explore or move to arbitrary locations.

Example: Place an item or trigger at a random spot on the map.


 

Events

Position in radius

Triggered when a valid position within the specified radius is found.

Example: Use this event to confirm that an agent has a valid destination before sending it to move.

Random position

Fired when a random position is successfully generated on the navigation mesh.

Example: Start an NPC at a randomly chosen location when the level begins.

Loaded

Triggered once the navigation mesh has been fully loaded and is ready for use.

Example: Start AI agents or pathfinding routines after this event is received to ensure the navmesh is operational.

$FOOTER