Documentation
Public Member Functions |
Static Public Member Functions |
Protected Member Functions |
Private Member Functions |
Private Attributes |
Friends |
List of all members  
  Urho3D::DynamicNavigationMesh Class Reference
  
Inheritance diagram for Urho3D::DynamicNavigationMesh:
Collaboration diagram for Urho3D::DynamicNavigationMesh:
Public Member Functions | |
| DynamicNavigationMesh (Context *) | |
| Constructor.  | |
| virtual | ~DynamicNavigationMesh () | 
| Destructor.  | |
| virtual bool | Build () | 
| Build/rebuild the entire navigation mesh.  | |
| virtual bool | Build (const BoundingBox &boundingBox) | 
| Build/rebuild a portion of the navigation mesh.  | |
| virtual void | DrawDebugGeometry (DebugRenderer *debug, bool depthTest) | 
| Visualize the component as debug geometry.  | |
| virtual void | SetNavigationDataAttr (const PODVector< unsigned char > &value) | 
| Set navigation data attribute.  | |
| virtual PODVector< unsigned char > | GetNavigationDataAttr () const | 
| Return navigation data attribute.  | |
  Public Member Functions inherited from Urho3D::NavigationMesh | |
| NavigationMesh (Context *context) | |
| Construct.  | |
| virtual | ~NavigationMesh () | 
| Destruct.  | |
| void | SetTileSize (int size) | 
| Set tile size.  | |
| void | SetCellSize (float size) | 
| Set cell size.  | |
| void | SetCellHeight (float height) | 
| Set cell height.  | |
| void | SetAgentHeight (float height) | 
| Set navigation agent height.  | |
| void | SetAgentRadius (float radius) | 
| Set navigation agent radius.  | |
| void | SetAgentMaxClimb (float maxClimb) | 
| Set navigation agent max vertical climb.  | |
| void | SetAgentMaxSlope (float maxSlope) | 
| Set navigation agent max slope.  | |
| void | SetRegionMinSize (float size) | 
| Set region minimum size.  | |
| void | SetRegionMergeSize (float size) | 
| Set region merge size.  | |
| void | SetEdgeMaxLength (float length) | 
| Set edge max length.  | |
| void | SetEdgeMaxError (float error) | 
| Set edge max error.  | |
| void | SetDetailSampleDistance (float distance) | 
| Set detail sampling distance.  | |
| void | SetDetailSampleMaxError (float error) | 
| Set detail sampling maximum error.  | |
| void | SetPadding (const Vector3 &padding) | 
| Set padding of the navigation mesh bounding box. Having enough padding allows to add geometry on the extremities of the navigation mesh when doing partial rebuilds.  | |
| void | SetAreaCost (unsigned areaID, float cost) | 
| Set the cost of an area.  | |
| Vector3 | FindNearestPoint (const Vector3 &point, const Vector3 &extents=Vector3::ONE) | 
| Find the nearest point on the navigation mesh to a given point. Extens specifies how far out from the specified point to check along each axis.  | |
| Vector3 | MoveAlongSurface (const Vector3 &start, const Vector3 &end, const Vector3 &extents=Vector3::ONE, int maxVisited=3) | 
| Try to move along the surface from one point to another.  | |
| void | FindPath (PODVector< Vector3 > &dest, const Vector3 &start, const Vector3 &end, const Vector3 &extents=Vector3::ONE) | 
| Find a path between world space points. Return non-empty list of points if successful. Extents specifies how far off the navigation mesh the points can be.  | |
| Vector3 | GetRandomPoint () | 
| Return a random point on the navigation mesh.  | |
| Vector3 | GetRandomPointInCircle (const Vector3 ¢er, float radius, const Vector3 &extents=Vector3::ONE) | 
| Return a random point on the navigation mesh within a circle. The circle radius is only a guideline and in practice the returned point may be further away.  | |
| float | GetDistanceToWall (const Vector3 &point, float radius, const Vector3 &extents=Vector3::ONE) | 
| Return distance to wall from a point. Maximum search radius must be specified.  | |
| Vector3 | Raycast (const Vector3 &start, const Vector3 &end, const Vector3 &extents=Vector3::ONE) | 
| Perform a walkability raycast on the navigation mesh between start and end and return the point where a wall was hit, or the end point if no walls.  | |
| void | DrawDebugGeometry (bool depthTest) | 
| Add debug geometry to the debug renderer.  | |
| String | GetMeshName () const | 
| Return the given name of this navigation mesh.  | |
| void | SetMeshName (const String &newName) | 
| Set the name of this navigation mesh.  | |
| int | GetTileSize () const | 
| Return tile size.  | |
| float | GetCellSize () const | 
| Return cell size.  | |
| float | GetCellHeight () const | 
| Return cell height.  | |
| float | GetAgentHeight () const | 
| Return navigation agent height.  | |
| float | GetAgentRadius () const | 
| Return navigation agent radius.  | |
| float | GetAgentMaxClimb () const | 
| Return navigation agent max vertical climb.  | |
| float | GetAgentMaxSlope () const | 
| Return navigation agent max slope.  | |
| float | GetRegionMinSize () const | 
| Return region minimum size.  | |
| float | GetRegionMergeSize () const | 
| Return region merge size.  | |
| float | GetEdgeMaxLength () const | 
| Return edge max length.  | |
| float | GetEdgeMaxError () const | 
| Return edge max error.  | |
| float | GetDetailSampleDistance () const | 
| Return detail sampling distance.  | |
| float | GetDetailSampleMaxError () const | 
| Return detail sampling maximum error.  | |
| const Vector3 & | GetPadding () const | 
| Return navigation mesh bounding box padding.  | |
| float | GetAreaCost (unsigned areaID) const | 
| Get the current cost of an area.  | |
| bool | IsInitialized () const | 
| Return whether has been initialized with valid navigation data.  | |
| const BoundingBox & | GetBoundingBox () const | 
| Return local space bounding box of the navigation mesh.  | |
| BoundingBox | GetWorldBoundingBox () const | 
| Return world space bounding box of the navigation mesh.  | |
| IntVector2 | GetNumTiles () const | 
| Return number of tiles.  | |
| void | SetPartitionType (NavmeshPartitionType aType) | 
| Set the partition type used for polygon generation.  | |
| NavmeshPartitionType | GetPartitionType () const | 
| Return Partition Type.  | |
  Public Member Functions inherited from Urho3D::Component | |
| Component (Context *context) | |
| Construct.  | |
| virtual | ~Component () | 
| Destruct.  | |
| virtual void | OnSetEnabled () | 
| Handle enabled/disabled state change.  | |
| virtual bool | Save (Serializer &dest) const | 
| Save as binary data. Return true if successful.  | |
| virtual bool | SaveXML (XMLElement &dest) const | 
| Save as XML data. Return true if successful.  | |
| virtual void | MarkNetworkUpdate () | 
| Mark for attribute check on the next network update.  | |
| virtual void | GetDependencyNodes (PODVector< Node * > &dest) | 
| Return the depended on nodes to order network updates.  | |
| void | SetEnabled (bool enable) | 
| Set enabled/disabled state.  | |
| void | Remove () | 
| Remove from the scene node. If no other shared pointer references exist, causes immediate deletion.  | |
| unsigned | GetID () const | 
| Return ID.  | |
| Node * | GetNode () const | 
| Return scene node.  | |
| Scene * | GetScene () const | 
| Return the scene the node belongs to.  | |
| bool | IsEnabled () const | 
| Return whether is enabled.  | |
| bool | IsEnabledEffective () const | 
| Return whether is effectively enabled (node is also enabled.)  | |
| Component * | GetComponent (StringHash type) const | 
| Return component in the same scene node by type. If there are several, returns the first.  | |
| void | GetComponents (PODVector< Component * > &dest, StringHash type) const | 
| Return components in the same scene node by type.  | |
| template<class T > | |
| T * | GetComponent () const | 
| Template version of returning a component in the same scene node by type.  | |
| template<class T > | |
| void | GetComponents (PODVector< T * > &dest) const | 
| Template version of returning components in the same scene node by type.  | |
| void | AddReplicationState (ComponentReplicationState *state) | 
| Add a replication state that is tracking this component.  | |
| void | PrepareNetworkUpdate () | 
| Prepare network update by comparing attributes and marking replication states dirty as necessary.  | |
| void | CleanupConnection (Connection *connection) | 
| Clean up all references to a network connection that is about to be removed.  | |
  Public Member Functions inherited from Urho3D::Animatable | |
| Animatable (Context *context) | |
| Construct.  | |
| virtual | ~Animatable () | 
| Destruct.  | |
| virtual bool | LoadXML (const XMLElement &source, bool setInstanceDefault=false) | 
| Load from XML data. When setInstanceDefault is set to true, after setting the attribute value, store the value as instance's default value. Return true if successful.  | |
| void | SetAnimationEnabled (bool enable) | 
| Set animation enabled.  | |
| void | SetObjectAnimation (ObjectAnimation *objectAnimation) | 
| Set object animation.  | |
| void | SetAttributeAnimation (const String &name, ValueAnimation *attributeAnimation, WrapMode wrapMode=WM_LOOP, float speed=1.0f) | 
| Set attribute animation.  | |
| void | SetAttributeAnimationWrapMode (const String &name, WrapMode wrapMode) | 
| Set attribute animation wrap mode.  | |
| void | SetAttributeAnimationSpeed (const String &name, float speed) | 
| Set attribute animation speed.  | |
| bool | GetAnimationEnabled () const | 
| Return animation enabled.  | |
| ObjectAnimation * | GetObjectAnimation () const | 
| Return object animation.  | |
| ValueAnimation * | GetAttributeAnimation (const String &name) const | 
| Return attribute animation.  | |
| WrapMode | GetAttributeAnimationWrapMode (const String &name) const | 
| Return attribute animation wrap mode.  | |
| float | GetAttributeAnimationSpeed (const String &name) const | 
| Return attribute animation speed.  | |
| void | SetObjectAnimationAttr (const ResourceRef &value) | 
| Set object animation attribute.  | |
| ResourceRef | GetObjectAnimationAttr () const | 
| Return object animation attribute.  | |
  Public Member Functions inherited from Urho3D::Serializable | |
| Serializable (Context *context) | |
| Construct.  | |
| virtual | ~Serializable () | 
| Destruct.  | |
| virtual void | OnSetAttribute (const AttributeInfo &attr, const Variant &src) | 
| Handle attribute write access. Default implementation writes to the variable at offset, or invokes the set accessor.  | |
| virtual void | OnGetAttribute (const AttributeInfo &attr, Variant &dest) const | 
| Handle attribute read access. Default implementation reads the variable at offset, or invokes the get accessor.  | |
| 
virtual const Vector < AttributeInfo > *  | GetAttributes () const | 
| Return attribute descriptions, or null if none defined.  | |
| 
virtual const Vector < AttributeInfo > *  | GetNetworkAttributes () const | 
| Return network replication attribute descriptions, or null if none defined.  | |
| virtual bool | Load (Deserializer &source, bool setInstanceDefault=false) | 
| Load from binary data. When setInstanceDefault is set to true, after setting the attribute value, store the value as instance's default value. Return true if successful.  | |
| virtual void | ApplyAttributes () | 
| Apply attribute changes that can not be applied immediately. Called after scene load or a network update.  | |
| virtual bool | SaveDefaultAttributes () const | 
| Return whether should save default-valued attributes into XML. Default false.  | |
| bool | SetAttribute (unsigned index, const Variant &value) | 
| Set attribute by index. Return true if successfully set.  | |
| bool | SetAttribute (const String &name, const Variant &value) | 
| Set attribute by name. Return true if successfully set.  | |
| void | ResetToDefault () | 
| Reset all editable attributes to their default values.  | |
| void | RemoveInstanceDefault () | 
| Remove instance's default values if they are set previously.  | |
| void | SetTemporary (bool enable) | 
| Set temporary flag. Temporary objects will not be saved.  | |
| void | SetInterceptNetworkUpdate (const String &attributeName, bool enable) | 
| Enable interception of an attribute from network updates. Intercepted attributes are sent as events instead of applying directly. This can be used to implement client side prediction.  | |
| void | AllocateNetworkState () | 
| Allocate network attribute state.  | |
| void | WriteInitialDeltaUpdate (Serializer &dest, unsigned char timeStamp) | 
| Write initial delta network update.  | |
| void | WriteDeltaUpdate (Serializer &dest, const DirtyBits &attributeBits, unsigned char timeStamp) | 
| Write a delta network update according to dirty attribute bits.  | |
| void | WriteLatestDataUpdate (Serializer &dest, unsigned char timeStamp) | 
| Write a latest data network update.  | |
| bool | ReadDeltaUpdate (Deserializer &source) | 
| Read and apply a network delta update. Return true if attributes were changed.  | |
| bool | ReadLatestDataUpdate (Deserializer &source) | 
| Read and apply a network latest data update. Return true if attributes were changed.  | |
| Variant | GetAttribute (unsigned index) const | 
| Return attribute value by index. Return empty if illegal index.  | |
| Variant | GetAttribute (const String &name) const | 
| Return attribute value by name. Return empty if not found.  | |
| Variant | GetAttributeDefault (unsigned index) const | 
| Return attribute default value by index. Return empty if illegal index.  | |
| Variant | GetAttributeDefault (const String &name) const | 
| Return attribute default value by name. Return empty if not found.  | |
| unsigned | GetNumAttributes () const | 
| Return number of attributes.  | |
| unsigned | GetNumNetworkAttributes () const | 
| Return number of network replication attributes.  | |
| bool | IsTemporary () const | 
| Return whether is temporary.  | |
| bool | GetInterceptNetworkUpdate (const String &attributeName) const | 
| Return whether an attribute's network updates are being intercepted.  | |
| NetworkState * | GetNetworkState () const | 
| Return the network attribute state, if allocated.  | |
  Public Member Functions inherited from Urho3D::Object | |
| Object (Context *context) | |
| Construct.  | |
| virtual | ~Object () | 
| Destruct. Clean up self from event sender & receiver structures.  | |
| virtual Urho3D::StringHash | GetType () const =0 | 
| Return type hash.  | |
| virtual Urho3D::StringHash | GetBaseType () const =0 | 
| Return base class type hash.  | |
| virtual const Urho3D::String & | GetTypeName () const =0 | 
| Return type name.  | |
| virtual void | OnEvent (Object *sender, StringHash eventType, VariantMap &eventData) | 
| Handle event.  | |
| void | SubscribeToEvent (StringHash eventType, EventHandler *handler) | 
| Subscribe to an event that can be sent by any sender.  | |
| void | SubscribeToEvent (Object *sender, StringHash eventType, EventHandler *handler) | 
| Subscribe to a specific sender's event.  | |
| void | UnsubscribeFromEvent (StringHash eventType) | 
| Unsubscribe from an event.  | |
| void | UnsubscribeFromEvent (Object *sender, StringHash eventType) | 
| Unsubscribe from a specific sender's event.  | |
| void | UnsubscribeFromEvents (Object *sender) | 
| Unsubscribe from a specific sender's events.  | |
| void | UnsubscribeFromAllEvents () | 
| Unsubscribe from all events.  | |
| void | UnsubscribeFromAllEventsExcept (const PODVector< StringHash > &exceptions, bool onlyUserData) | 
| Unsubscribe from all events except those listed, and optionally only those with userdata (script registered events.)  | |
| void | SendEvent (StringHash eventType) | 
| Send event to all subscribers.  | |
| void | SendEvent (StringHash eventType, VariantMap &eventData) | 
| Send event with parameters to all subscribers.  More... | |
| VariantMap & | GetEventDataMap () const | 
| Return a preallocated map for event data. Used for optimization to avoid constant re-allocation of event data maps.  | |
| Context * | GetContext () const | 
| Return execution context.  | |
| Object * | GetSubsystem (StringHash type) const | 
| Return subsystem by type.  | |
| Object * | GetEventSender () const | 
| Return active event sender. Null outside event handling.  | |
| EventHandler * | GetEventHandler () const | 
| Return active event handler. Null outside event handling.  | |
| bool | HasSubscribedToEvent (StringHash eventType) const | 
| Return whether has subscribed to an event without specific sender.  | |
| bool | HasSubscribedToEvent (Object *sender, StringHash eventType) const | 
| Return whether has subscribed to a specific sender's event.  | |
| bool | HasEventHandlers () const | 
| Return whether has subscribed to any event.  | |
| template<class T > | |
| T * | GetSubsystem () const | 
| Template version of returning a subsystem.  | |
| const String & | GetCategory () const | 
| Return object category. Categories are (optionally) registered along with the object factory. Return an empty string if the object category is not registered.  | |
  Public Member Functions inherited from Urho3D::RefCounted | |
| RefCounted () | |
| Construct. Allocate the reference count structure and set an initial self weak reference.  | |
| virtual | ~RefCounted () | 
| Destruct. Mark as expired and also delete the reference count structure if no outside weak references exist.  | |
| void | AddRef () | 
| Increment reference count. Can also be called outside of a SharedPtr for traditional reference counting.  | |
| void | ReleaseRef () | 
| Decrement reference count and delete self if no more references. Can also be called outside of a SharedPtr for traditional reference counting.  | |
| int | Refs () const | 
| Return reference count.  | |
| int | WeakRefs () const | 
| Return weak reference count.  | |
| RefCount * | RefCountPtr () | 
| Return pointer to the reference count structure.  | |
Static Public Member Functions | |
| static void | RegisterObject (Context *) | 
| Register with engine context.  | |
  Static Public Member Functions inherited from Urho3D::NavigationMesh | |
| static void | RegisterObject (Context *context) | 
| Register object factory.  | |
Protected Member Functions | |
| virtual void | OnNodeSet (Node *) | 
| Subscribe to events when assigned to a node.  | |
| void | HandleSceneSubsystemUpdate (StringHash eventType, VariantMap &eventData) | 
| Trigger the tile cache to make updates to the nav mesh if necessary.  | |
| void | AddObstacle (Obstacle *obstacle, bool silent=false) | 
| Used by Obstacle class to add itself to the tile cache, if 'silent' an event will not be raised.  | |
| void | ObstacleChanged (Obstacle *obstacle) | 
| Used by Obstacle class to update itself.  | |
| void | RemoveObstacle (Obstacle *, bool silent=false) | 
| Used by Obstacle class to remove itself from the tile cache, if 'silent' an event will not be raised.  | |
| int | BuildTile (Vector< NavigationGeometryInfo > &geometryList, int x, int z, TileCacheData *) | 
| Build one tile of the navigation mesh. Return true if successful.  | |
| PODVector< OffMeshConnection * > | CollectOffMeshConnections (const BoundingBox &bounds) | 
| Off-mesh connections to be rebuilt in the mesh processor.  | |
| virtual void | ReleaseNavigationMesh () | 
| Release the navigation mesh, query, and tile cache.  | |
  Protected Member Functions inherited from Urho3D::NavigationMesh | |
| void | CollectGeometries (Vector< NavigationGeometryInfo > &geometryList) | 
| Collect geometry from under Navigable components.  | |
| void | CollectGeometries (Vector< NavigationGeometryInfo > &geometryList, Node *node, HashSet< Node * > &processedNodes, bool recursive) | 
| Visit nodes and collect navigable geometry.  More... | |
| void | GetTileGeometry (NavBuildData *build, Vector< NavigationGeometryInfo > &geometryList, BoundingBox &box) | 
| Get geometry data within a bounding box.  | |
| void | AddTriMeshGeometry (NavBuildData *build, Geometry *geometry, const Matrix3x4 &transform) | 
| Add a triangle mesh to the geometry data.  | |
| virtual bool | BuildTile (Vector< NavigationGeometryInfo > &geometryList, int x, int z) | 
| Build one tile of the navigation mesh. Return true if successful.  More... | |
| bool | InitializeQuery () | 
| Ensure that the navigation mesh query is initialized. Return true if successful.  | |
  Protected Member Functions inherited from Urho3D::Component | |
| virtual void | OnAttributeAnimationAdded () | 
| Handle attribute animation added.  | |
| virtual void | OnAttributeAnimationRemoved () | 
| Handle attribute animation removed.  | |
| virtual void | OnMarkedDirty (Node *node) | 
| Handle scene node transform dirtied.  | |
| virtual void | OnNodeSetEnabled (Node *node) | 
| Handle scene node enabled status changing.  | |
| void | SetID (unsigned id) | 
| Set ID. Called by Scene.  | |
| void | SetNode (Node *node) | 
| Set scene node. Called by Node when creating the component.  | |
| void | HandleAttributeAnimationUpdate (StringHash eventType, VariantMap &eventData) | 
| Handle scene attribute animation update event.  | |
  Protected Member Functions inherited from Urho3D::Animatable | |
| virtual void | SetObjectAttributeAnimation (const String &name, ValueAnimation *attributeAnimation, WrapMode wrapMode, float speed) | 
| Set object attribute animation internal.  | |
| void | OnObjectAnimationAdded (ObjectAnimation *objectAnimation) | 
| Handle object animation added.  | |
| void | OnObjectAnimationRemoved (ObjectAnimation *objectAnimation) | 
| Handle object animation removed.  | |
| void | UpdateAttributeAnimations (float timeStep) | 
| Update attribute animations.  | |
| bool | IsAnimatedNetworkAttribute (const AttributeInfo &attrInfo) const | 
| Is animated network attribute.  | |
| AttributeAnimationInfo * | GetAttributeAnimationInfo (const String &name) const | 
| Return attribute animation info.  | |
| void | HandleAttributeAnimationAdded (StringHash eventType, VariantMap &eventData) | 
| Handle attribute animation added.  | |
| void | HandleAttributeAnimationRemoved (StringHash eventType, VariantMap &eventData) | 
| Handle attribute animation removed.  | |
Private Member Functions | |
| void | ReleaseTileCache () | 
| Free the tile cache.  | |
Private Attributes | |
| dtTileCache * | tileCache_ | 
| Detour tile cache instance that works with the nav mesh.  | |
| dtTileCacheAlloc * | allocator_ | 
| Used by dtTileCache to allocate blocks of memory.  | |
| dtTileCacheCompressor * | compressor_ | 
| Used by dtTileCache to compress the original tiles to use when reconstructing for changes.  | |
| dtTileCacheMeshProcess * | meshProcessor_ | 
| Mesh processer used by Detour, in this case a 'pass-through' processor.  | |
| unsigned | maxObstacles_ | 
| Maximum number of obstacle objects allowed.  | |
Friends | |
| class | Obstacle | 
| struct | MeshProcess | 
Additional Inherited Members | |
  Protected Attributes inherited from Urho3D::NavigationMesh | |
| String | meshName_ | 
| Identifying name for this navigation mesh.  | |
| dtNavMesh * | navMesh_ | 
| Detour navigation mesh.  | |
| dtNavMeshQuery * | navMeshQuery_ | 
| Detour navigation mesh query.  | |
| dtQueryFilter * | queryFilter_ | 
| Detour navigation mesh query filter.  | |
| FindPathData * | pathData_ | 
| Temporary data for finding a path.  | |
| int | tileSize_ | 
| Tile size.  | |
| float | cellSize_ | 
| Cell size.  | |
| float | cellHeight_ | 
| Cell height.  | |
| float | agentHeight_ | 
| Navigation agent height.  | |
| float | agentRadius_ | 
| Navigation agent radius.  | |
| float | agentMaxClimb_ | 
| Navigation agent max vertical climb.  | |
| float | agentMaxSlope_ | 
| Navigation agent max slope.  | |
| float | regionMinSize_ | 
| Region minimum size.  | |
| float | regionMergeSize_ | 
| Region merge size.  | |
| float | edgeMaxLength_ | 
| Edge max length.  | |
| float | edgeMaxError_ | 
| Edge max error.  | |
| float | detailSampleDistance_ | 
| Detail sampling distance.  | |
| float | detailSampleMaxError_ | 
| Detail sampling maximum error.  | |
| Vector3 | padding_ | 
| Bounding box padding.  | |
| int | numTilesX_ | 
| Number of tiles in X direction.  | |
| int | numTilesZ_ | 
| Number of tiles in Z direction.  | |
| BoundingBox | boundingBox_ | 
| Whole navigation mesh bounding box.  | |
| NavmeshPartitionType | partitionType_ | 
| Type of the heightfield partitioning.  | |
| bool | keepInterResults_ | 
| Keep internal build resources for debug draw modes.  | |
| 
HashMap< Pair< int, int > , NavBuildData * >  | builds_ | 
| Internal build resources for creating the navmesh.  | |
The documentation for this class was generated from the following files:
- /home/travis/build/urho3d/Urho3D/Source/Urho3D/Navigation/DynamicNavigationMesh.h
 - /home/travis/build/urho3d/Urho3D/Source/Urho3D/Navigation/DynamicNavigationMesh.cpp
 

 Public Member Functions inherited from