![]() |
VR-Forces Developer's Guide
|
Classes | |
| struct | CollisionAvoidanceConfiguration |
| struct | NavigationConfiguration |
Public Types | |
| enum | NavigationMethod { NavigationMethodShortcut = 0, NavigationMethodSpline = 1 } |
| enum | PathStatus { PathStatusInactive, PathStatusComputing, PathStatusHasPath, PathStatusArrived, PathStatusNoValidPath, PathStatusLeavingArea, PathStatusFindingTransitionPoint, PathStatusNoValidPathDestOutside, PathStatusNoValidPathStartOutside } |
| typedef DtNavBot *(* | DtNavBotCreatorFcn )() |
| typedef bool(* | NavBotPathLocationEvalFcn )(const DtNavTag &navTag, float slope, float elevationChange, float *costMultiplier, void *userData) |
Public Member Functions | |
| virtual | ~DtNavBot () |
| virtual void | init (DtNavArea *world, const DtString &profile, double radius, double height, DtNavigationPriorityType queryQueuePriority, NavigationConfiguration navConfig=NavigationConfiguration(), CollisionAvoidanceConfiguration collAvoidConfig=CollisionAvoidanceConfiguration())=0 |
| virtual void | setPosition (const DtVector &localPos)=0 |
| virtual void | setPositionInvalid ()=0 |
| virtual void | setQueryQueuePriority (const DtNavigationPriorityType &queryQueuePriority)=0 |
| virtual void | botUpdate (const DtVector &localPos, double dT)=0 |
| virtual void | setDestination (const DtVector &localPos, bool forceOutsideArea=false)=0 |
| virtual void | setDesiredSpeed (double speed)=0 |
| virtual void | clearFollowedPath ()=0 |
| virtual void | clearDestination ()=0 |
| virtual DtVector | currentDestination () const =0 |
| virtual void | resetDestination ()=0 |
| virtual int | getTriangleIndex () const =0 |
| virtual void | getTriangleVertices (DtVector &corner1, DtVector &corner2, DtVector &corner3) const =0 |
| virtual DtVector | getPointOnTriangle (const DtVector &localLocation) const =0 |
| virtual DtVector | getOutputVelocity ()=0 |
| virtual void | setPathEvalFcn (NavBotPathLocationEvalFcn fcn, void *user)=0 |
| virtual PathStatus | pathStatus (double atDistance)=0 |
| virtual DtString | pathStatusString ()=0 |
| virtual bool | hasArrived (double arrivalDistance)=0 |
| virtual bool | currentPath (std::vector< DtVector > &path)=0 |
| virtual bool | abstractPath (std::vector< DtVector > &path)=0 |
| virtual bool | currentPathEdge (DtVector &edgeStart, DtVector &edgeEnd)=0 |
| virtual void | getNavPathAsRw (DtRwBinaryData &)=0 |
| virtual bool | setPath (DtRwBinaryData &)=0 |
| virtual unsigned | currentAbstractPathIndex ()=0 |
| virtual void | setUseAbstractGraph (bool yesNo)=0 |
| virtual void | resetUseAbstractGraph ()=0 |
| virtual bool | usingAbstractGraph () const =0 |
| virtual DtNavTag | navTagAtPosition (const DtVector &localPos) const =0 |
| virtual DtNavTag | upcomingNavTagOnPath () const =0 |
| virtual void | upcomingNavTagsOnPath (double distance, DtNavTagAndLocationList &navTags) const =0 |
| virtual void | setCollisionAvoidanceEnabled (bool enable)=0 |
| virtual void | setNavigationMethod (NavigationMethod navMethod)=0 |
| virtual NavigationMethod | navigationMethod () const =0 |
| virtual DtVector | performMovement (double dt)=0 |
| virtual DtVector | groundClamp (const DtVector &localPos, DtVector &normal)=0 |
Static Public Member Functions | |
| static DtNavBot * | create () |
| static void | setNavBotCreatorFcn (DtNavBotCreatorFcn fcn) |
Static Protected Attributes | |
| static DtNavBotCreatorFcn | theNavBotCreatorFcn |
| typedef DtNavBot*(* DtNavBot::DtNavBotCreatorFcn)() |
| typedef bool(* DtNavBot::NavBotPathLocationEvalFcn)(const DtNavTag &navTag, float slope, float elevationChange, float *costMultiplier, void *userData) |
| enum DtNavBot::PathStatus |
|
inlinevirtual |
|
static |
|
static |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
returns false if the path wasn't initialized/set successfully
|
pure virtual |
|
pure virtual |
Can be used to enable or disable abstract graph usage. Takes effect the next time the destination is set.
|
pure virtual |
Resets abstract graph usage to configured settings, undoing any settings from setUseAbstractGraph.
|
pure virtual |
Return true if currently using the abstract graph for path planning.
|
pure virtual |
Gets the nav tag of the position, if valid.
|
pure virtual |
Gets the upcoming nav tag in the path.
|
pure virtual |
Gets all nav tags within the specified distance from the current location on the path.
|
pure virtual |
Enables or disables collision avoidance. Cannot enable collision avoidance if the bot is configured to have it disabled. Only has an effect if collision avoidance is configured.
|
pure virtual |
|
pure virtual |
|
pure virtual |
Allows the nav bot to perform movement for the entity. Returns the new entity location after processing movement for the next dt seconds.
|
pure virtual |
Finds a ground clamped position on the nav data near the specified local position. Also outputs the normal of the clamped position.
|
staticprotected |