dtAI Namespace Reference

Delta3D Open Source Game and Simulation Engine Copyright (C) 2004-2006 MOVES Institute. More...


Classes

class  AIParticleManager
 The AIParticleManager is almost like a particle system for agents, it is designed to support predicting another agents location using probability distribution analysis. More...
class  AStar
 A generic implementation of the standard A* algorithm. More...
struct  delete_func
struct  node_type_gtr_func
struct  node_type_comp_func
class  AStarConfig
 AStarConfig contains the basic data that AStar operates on. More...
class  AStarCostFunc
 AStarCostFunc is a function that generates a cost between two nodes derive this class and implement operator() with your custom data type. More...
class  AStarNode
 AStarNode is a data container for a single node in an AStar Path. More...
class  WaypointIter
 This is an example of how to use class AStar for generic path finding. More...
class  WaypointNode
 This is the NodeType derivative used by the AStar class. More...
class  WaypointCostFunc
 This class is used to compute the cost between two DataType's, for us this DataType is const Waypoint*. More...
class  AStarTimer
 This is a simple timer classed created with the dtCore::Timer. More...
class  BaseNPC
 This represents the base delta class used for AI agents having embedded support for the planning architecture and a generic FSM. More...
class  StateVar
 Utilities for making the use of the Planner even easier. More...
class  Conditional
class  IEffect
class  Eff
class  TGoal
class  TOperator
class  IConditional
 An expression that evaluates to true of false. More...
class  FSM
 A class which represents a Finite State Machine. More...
class  NavMesh
 A NavMesh is the collection of all WaypointPairs This is used for finding traversal paths between points. More...
class  NPCEvent
class  NPCParser
 The class used to parse NPCScript. More...
class  NPCState
class  NPCStateTypes
class  Operator
class  Planner
 A game oriented Planner modeled after Jeff Orkin's F.E.A.R Planner. More...
class  PlannerTimer
class  PlannerConfig
class  PlannerHelper
 A class used to interface with the planner. More...
class  PlannerNodeLink
 The data structure used by the planner for navigating through a plan graph. More...
class  IStateVariable
 A single entity of a dtAI::WorldState. More...
class  Waypoint
 This class encapsulates a Vec3 as a position and is a place holder for other potential data someone might want to store in a waypoint. More...
class  WaypointActor
 This class is used as the actor for a WaypointActorProxy its positional data is used to save the actual waypoint data it is also the class used to interface between and the WaypointManager. More...
class  WaypointManager
 A static class which manages all waypoints. More...
class  WaypointPair
 A WaypointPair is used to represent a pair of waypoints where the path between them is traversable. More...
class  WorldState

Typedefs

typedef AStar< WaypointNode,
WaypointCostFunc, std::list
< const Waypoint * >,
AStarTimer
WaypointAStar
 And this is where the magic happens.
typedef StateVar< bool > StateVariable
typedef Conditional< bool > Precondition
typedef Conditional< bool > Interrupt
typedef Eff< bool > Effect
typedef TGoal< float, bool > Goal
typedef TOperator< bool > NPCOperator

Functions

template<typename _Type>
const StateVar< _Type > * GetWorldStateVariable (const WorldState *pWS, const std::string &pName)
template<typename _Type>
StateVar< _Type > * GetWorldStateVariable (WorldState *pWS, const std::string &pName)
std::ostream & operator<< (std::ostream &o, const IStateVariable &stateVar)
DT_AI_EXPORT std::ostream & operator<< (std::ostream &o, const WorldState &worldState)
 IMPLEMENT_ENUM (NPCEvent)
 IMPLEMENT_ENUM (NPCStateTypes)


Detailed Description

Delta3D Open Source Game and Simulation Engine Copyright (C) 2004-2006 MOVES Institute.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Bradley Anderegg 06/27/2006


Typedef Documentation

typedef Eff<bool> dtAI::Effect

typedef TGoal<float, bool> dtAI::Goal

typedef Conditional<bool> dtAI::Interrupt

typedef TOperator<bool> dtAI::NPCOperator

typedef Conditional<bool> dtAI::Precondition

typedef StateVar<bool> dtAI::StateVariable

typedef AStar<WaypointNode, WaypointCostFunc, std::list<const Waypoint*>, AStarTimer > dtAI::WaypointAStar

And this is where the magic happens.

A template instantiation of class AStar using WaypointNode as the NodeType, the custom cost function above, a container to hold our result and a timer for statistical tracking and constraints. Now we can use the AStar API on our custom AStar type WaypointAStar.


Function Documentation

template<typename _Type>
StateVar<_Type>* dtAI::GetWorldStateVariable ( WorldState *  pWS,
const std::string &  pName 
) [inline]

template<typename _Type>
const StateVar<_Type>* dtAI::GetWorldStateVariable ( const WorldState *  pWS,
const std::string &  pName 
) [inline]

dtAI::IMPLEMENT_ENUM ( NPCStateTypes   ) 

dtAI::IMPLEMENT_ENUM ( NPCEvent   ) 

std::ostream & dtAI::operator<< ( std::ostream &  o,
const WorldState &  worldState 
)

std::ostream& dtAI::operator<< ( std::ostream &  o,
const IStateVariable &  stateVar 
) [inline]


http://www.delta3d.org
2.0.0 generated 14 Feb 2008