[This is preliminary documentation and is subject to change.]

A navigation mesh based on convex polygons.

Namespace: org.critterai.nav
Assembly: cai-nav (in cai-nav.dll) Version: 0.4.0.0 (0.4.0.0)

Syntax

         
 C#  Visual Basic  Visual C++ 
[SerializableAttribute]
public sealed class Navmesh : ManagedObject, 
	ISerializable
<SerializableAttribute> _
Public NotInheritable Class Navmesh _
	Inherits ManagedObject _
	Implements ISerializable
[SerializableAttribute]
public ref class Navmesh sealed : public ManagedObject, 
	ISerializable

Members

            
 All Members  Fields   Properties   Methods  
 Public

 Protected
 Instance

 Static 
 Declared

 Inherited
 XNA Framework Only 

 .NET Compact Framework Only 

 MemberDescription
AddTile(NavmeshTileData, UInt32, UInt32%)
Adds a tile to the navigation mesh.
Create(array<Byte>[]()[][], Navmesh%)
Creates a navigation mesh from data obtained from the GetSerializedMesh()()()() method.
Create(NavmeshParams, Navmesh%)
Creates an empty navigation mesh ready for tiles to be added.
Create(NavmeshTileBuildData, Navmesh%)
Creates a single-tile navigation mesh.
DeriveTileLocation(Vector3, Int32%, Int32%)
Derives the tile grid location based on the provided world space position.
ExternalLink
A flag that indicates a link is external. (Context dependent.)
ExtractTileData(array<Byte>[]()[][], array<NavmeshTileExtract>[]()[][]%, NavmeshParams%)
Extracts the tile data from a serialized navigation mesh.
Finalize()()()()
Destructor
(Overrides Object..::..Finalize()()()().)
GetConfig()()()()
Returns the configuration parameters used to initialize the navigation mesh.
GetConnectionByRef(UInt32)
Gets an off-mesh connection.
GetConnectionEndpoints(UInt32, UInt32, Vector3%, Vector3%)
Gets the endpoints for an off-mesh connection, ordered by 'direction of travel'.
GetMaxTiles()()()()
The maximum number of tiles supported by the navigation mesh.
GetObjectData(SerializationInfo, StreamingContext) Obsolete.
Gets serialization data for the object.
GetPolyArea(UInt32, Byte%)
Returns the area of the specified polygon.
GetPolyFlags(UInt32, UInt16%)
Returns the flags for the specified polygon.
GetSerializedMesh()()()()
Gets a serialized version of the mesh.
GetTile(Int32)
Gets a tile from the tile buffer.
GetTile(Int32, Int32, Int32)
Gets the tile at the specified grid location.
GetTileAndPoly(UInt32, NavmeshTile%, NavmeshPoly%)
Gets a polygon and its tile.
GetTileByRef(UInt32)
Gets a tile using its reference.
GetTileRef(Int32, Int32, Int32)
Gets the reference for the tile at the specified grid location.
GetTiles(Int32, Int32, array<NavmeshTile>[]()[][])
Gets all tiles at the specified grid location. (All layers.)
IsDisposed
True if the object has been disposed and should no longer be used.
(Overrides ManagedObject..::..IsDisposed.)
IsValidPolyRef(UInt32)
Indicates whether or not the specified polygon reference is valid.
MaxAllowedVertsPerPoly
The maximum supported vertices per polygon.
MaxArea
The maximum allowed area value.
NullArea
Represents an unwalkable area.
NullIndex
Represents an polygon index that does not point to anything.
NullLink
Indicates that a link is null. (Does not link to anything.)
NullPoly
The reference for a null polygon. (Does not exist.)
NullTile
The reference for a null tile. (Does not exist.)
RemoveTile(UInt32)
Removes the specified tile from the mesh.
RequestDisposal()()()()
Request all resources controlled by the object be immediately freed and the object marked as disposed.
(Overrides ManagedObject..::..RequestDisposal()()()().)
SetPolyArea(UInt32, Byte)
Sets the area of the specified polygon.
SetPolyFlags(UInt32, UInt16)
Sets the flags for the specified polygon.

Remarks

See An Introduction to Navigation for information on how to use the navigation mesh.

This class is used in conjunction with the NavmeshQuery class to provide path planning features.

Most object references returned by this class cannot be compared for equality. I.e. mesh.GetTile(0) != mesh.GetTile(0). The object state may be equal, but the references are not.

This class does not have any asynchronous methods. So the return status of all methods will always contain either a success or failure flag.

Warning: The serializable attribute and interface will be removed in v0.5. Use GetSerializedMesh()()()() instead.

Behavior is undefined if used after disposal.

Inheritance Hierarchy

System..::..Object
  org.critterai.interop..::..ManagedObject
    org.critterai.nav..::..Navmesh

See Also