My Project
|
Base Interface for Biped controller. More...
#include <BipedController.h>
Public Member Functions | |
CBipedController (CAIBase *pAI) | |
bool | IsActive () |
check whether the controller is active(not suspended). More... | |
virtual void | Suspend () |
suspend the controller, so it does not take effects on the next frame move. More... | |
virtual void | Resume () |
resume the controller. More... | |
virtual void | SetTime (float fTime) |
set the internal timer. More... | |
float | GetTime () |
get the current movie time | |
IGameObject * | GetClosestBiped (IGameObject *pInput) |
get the biped in the perceived biped list, which is closet to the current biped. More... | |
IGameObject * | FindBiped (IGameObject *pInput, const std::string &searchString) |
Find a biped with a matching name. More... | |
CBipedObject * | GetBiped () |
get the biped, to which this biped controller is associated. More... | |
void | SetAI (CAIBase *pAI) |
set the AI object to which this object is associated. More... | |
virtual void | FrameMove (float fDeltaTime) |
a virtual function which is called every frame to process the controller. More... | |
Protected Attributes | |
float | m_fTimeElapsed |
total time elapsed since the controller is active(not suspended). More... | |
Base Interface for Biped controller.
The AI module contains a collection of biped controllers for directing the behavior of the biped.Each biped controller derived from this class may control a certain aspect of the biped, such as UserController, MovieController, OPCController NPLController, FacingController, CollisionController, etc.
IGameObject * CBipedController::FindBiped | ( | IGameObject * | pInput, |
const std::string & | searchString | ||
) |
Find a biped with a matching name.
pInput | the active biped list. |
searchString | e.g. "LiXizhi", "LXZ*" |
|
virtual |
a virtual function which is called every frame to process the controller.
fDeltaTime | the time elapsed since the last frame move is called. |
Reimplemented in ParaEngine::CMovieCtrler, ParaEngine::CFollowCtrler, ParaEngine::CFaceTrackingCtrler, and ParaEngine::CSequenceCtler.
CBipedObject * CBipedController::GetBiped | ( | ) |
get the biped, to which this biped controller is associated.
IGameObject * CBipedController::GetClosestBiped | ( | IGameObject * | pInput | ) |
get the biped in the perceived biped list, which is closet to the current biped.
pInput | the active biped list. return: NULL is returned if there is no closest biped. The pointer returned is only valid where pInput is valid |
bool CBipedController::IsActive | ( | ) |
check whether the controller is active(not suspended).
|
virtual |
resume the controller.
Reimplemented in ParaEngine::CMovieCtrler.
void CBipedController::SetAI | ( | CAIBase * | pAI | ) |
set the AI object to which this object is associated.
|
virtual |
set the internal timer.
This is useful when the behavior is relevant to the timer.
Reimplemented in ParaEngine::CMovieCtrler.
|
virtual |
suspend the controller, so it does not take effects on the next frame move.
Reimplemented in ParaEngine::CMovieCtrler.
|
protected |
total time elapsed since the controller is active(not suspended).