Page principale | Liste des namespaces | Hiérarchie des classes | Liste par ordre alphabétique | Liste des composants | Liste des fichiers | Membres des namespaces | Composants | Déclarations

Référence de la classe ExCModel3DS

#include <ExCModel3DS.h>

Graphe d'héritage de la classe ExCModel3DS

ExCModel ExCModel ExCObject3D ExCObject3D ExCObject ExCObject

Membres publics

 ExCModel3DS (void)
 ~ExCModel3DS (void)
void BuildList (int Rendu)
void Draw (void)
void CallAllList (void)
void CallAllArray (void)
bool Load (std::string FileName)
void StartAction (std::string Action)
void StopAction (std::string Action)
void Process (std::string Action)
void ProcessAllAction (void)
ExCAction InputAction (ExCAction Action)
bool IsAction (std::string Action)
 ExCModel3DS (void)
 ~ExCModel3DS (void)
void BuildList (int Rendu)
void Draw (void)
void CallAllList (void)
void CallAllArray (void)
bool Load (std::string FileName)
void StartAction (std::string Action)
void StopAction (std::string Action)
void Process (std::string Action)
void ProcessAllAction (void)
ExCAction InputAction (ExCAction Action)
bool IsAction (std::string Action)
void NextFrame (void)
void PreviousFrame (void)
void SetCurrentFrame (int frame)
int GetCurrentFrame (void)
void SetInterpolationPourcentage (float inter)
float GetInterpolationPourcentage (void)
void SetManagerTexture (ExManagerTexture *Texture)
virtual void StopRun (void)
virtual void StartRun (void)
virtual void StopAction (void)
void Forward (void)
ExCGizmoGetCollisionGizmo (void)
void IncreaseCollisionCouter (void)
void DeCreaseCollisionCouter (void)
void ResetCollisionCouter (void)
void SetRenderMode (int mode)
void SetCurrentState (bool state)
void ShowInfo (void)
void SetShowInfoState (bool state)
bool GetShowInfoState (void)
void SetAngleX (float Angle)
void SetAngleY (float Angle)
void SetAngleZ (float Angle)
float GetAngleX (void)
float GetAngleY (void)
float GetAngleZ (void)
void SetAcceleration (ExCVec3D Acceleration)
void SetAcceleration (float x, float y, float z)
ExCVec3D GetAcceleration (void)
void SetVelocity (ExCVec3D Velocity)
void SetVelocity (float x, float y, float z)
ExCVec3D GetVelocity (void)
void SetGravity (ExCVec3D Gravity)
void SetGravity (float x, float y, float z)
ExCVec3D GetGravity (void)
void SetPosition (ExCVec3D Position)
void SetPosition (float x, float y, float z)
ExCVec3D GetPosition (void)
void SetTarget (ExCVec3D Target)
void SetTarget (float x, float y, float z)
ExCVec3D GetTarget (void)
void SetOldPosition (ExCVec3D OldPosition)
void SetOldPosition (float x, float y, float z)
ExCVec3D GetOldPosition (void)
void SetOldTarget (ExCVec3D OldTarget)
void SetOldTarget (float x, float y, float z)
ExCVec3D GetOldTarget (void)
void Rotate (float angleX, float angleY, float angleZ)
void Rotate (void)
void SetVisibleState (bool state)
bool GetVisibleState (void)
void SetFlux (std::ostrstream *consol, ExCFluxAction *action)
virtual bool LoadFile (std::string FileName)
void SetIdName (ExNihilo::IdName idname)
ExNihilo::ExId GetId (void)
std::string GetName (void)
std::string GetFileName (void)
std::string GetType (void)
void SetId (ExNihilo::ExId Id)
void SetName (std::string Name)
void SetFileName (std::string FileName)
void SetType (std::string Type)

Attributs Publics

bool HasList
bool HasArray
std::vector< t3DObject > * m_VecObject
std::vector< t3DObject > * m_VecObject
bool m_AlwaysDraw
ExCVec3D m_Position
ExCVec3D m_OldPosition
ExCVec3D m_Target
ExCVec3D m_OldTarget
ExCVec3D m_Angle
int m_speed
float m_SphereRadius
bool m_Visible
std::ostrstream * Consol
ExCFluxActionFluxAction

Membres protégés

void ReadObjectInfo (tChunk *chunk)
void ReadObject (tChunk *chunk)
void ReadObjectMaterial (tChunk *chunk)
void ReadChunk (tChunk *chunk)
void Skip (tChunk *chunk)
void ReadVertices (t3DObject *pObject, tChunk *chunk)
void ReadFace (t3DObject *pObject, tChunk *chunk)
void ReadUVCoordinates (t3DObject *pObject, tChunk *chunk)
void ReadObjectMaterial (t3DObject *pObject, tChunk *chunk)
void BuildArray (int Rendu)
void ReadObjectInfo (tChunk *chunk)
void ReadObject (tChunk *chunk)
void ReadObjectMaterial (tChunk *chunk)
void ReadChunk (tChunk *chunk)
void Skip (tChunk *chunk)
void ReadVertices (t3DObject *pObject, tChunk *chunk)
void ReadFace (t3DObject *pObject, tChunk *chunk)
void ReadUVCoordinates (t3DObject *pObject, tChunk *chunk)
void ReadObjectMaterial (t3DObject *pObject, tChunk *chunk)
void BuildArray (int Rendu)

Attributs Protégés

FILE * m_filePtr
int numOfObjects
int numOfMaterials
std::vector< tMaterialInfom_VecMaterials
tChunkm_CurrentChunk
tChunkm_TempChunk
GLuint m_ListId
float * m_VertexArray
unsigned int * m_FaceArray
float * m_TextureArray
std::vector< std::string > m_VecAction
std::vector< std::string
>::iterator 
m_IVecAction
FILE * m_filePtr
std::vector< tMaterialInfom_VecMaterials
tChunkm_CurrentChunk
tChunkm_TempChunk
float * m_VertexArray
unsigned int * m_FaceArray
float * m_TextureArray
std::vector< std::string > m_VecAction
std::vector< std::string
>::iterator 
m_IVecAction
PFNGLBINDBUFFERARBPROC glBindBufferARB
PFNGLGENBUFFERSARBPROC glGenBuffersARB
PFNGLBUFFERDATAARBPROC glBufferDataARB
ExManagerTextureManagerTexture
int m_CurrentFrames
int m_NextFrame
int m_numFrames
float m_InterpolationPourcentage
bool m_Transition
float m_Interpolation
int m_KeyFrameStartAction
int m_KeyFrameStopAction
std::string m_CurrentAction
ExCGizmom_CollisionGizmo
int m_CollisionCounter
int m_RenderMode
ExCVec3D m_Up
ExCVec3D m_Velocity
ExCVec3D m_Gravity
ExCVec3D m_Acceleration
double m_RefreshTime
double m_Life
double m_StartingLife
float m_Size
float m_Mass
bool m_ShowInfo
bool m_CurrentObject
ExNihilo::ExId m_ObjectId
std::string m_ObjectName
std::string m_ObjectFileName
std::string m_ObjectType

Documentation des contructeurs et destructeurs

ExCModel3DS::ExCModel3DS void   ) 
 

Définition à la ligne 26 du fichier ExCModel3DS.cpp.

Références ExCModel::ExCModel(), ExCModel3DS(), Guard, HasArray, HasList, ExCModel::m_AlwaysDraw, ExCModel::m_CollisionCounter, ExCModel::m_CollisionGizmo, m_ListId, ExCModel::m_RenderMode, RENDER_VERTEX_ARRAY, ExCObject::SetName(), ExCObject::SetType(), ExCObject3D::SetVisibleState(), et UnGuard.

Référencé par ExCModel3DS(), et ~ExCModel3DS().

00027 {
00028 Guard(ExCModel3DS::ExCModel3DS(void))
00029         ExCModel::ExCModel();
00030         SetName("ExCModel3DS");
00031         SetType(typeid(this).name());
00032         m_ListId=-1;
00033         m_CollisionGizmo=new ExCGizmoRectangle;
00034         m_CollisionCounter=0;
00035         HasList=false;
00036         HasArray=false;
00037         m_AlwaysDraw=false;
00038         SetVisibleState(true);
00039         //m_RenderMode=RENDER_DISPLAY_LIST;
00040         m_RenderMode=RENDER_VERTEX_ARRAY;
00041 UnGuard
00042 }

ExCModel3DS::~ExCModel3DS void   ) 
 

Définition à la ligne 44 du fichier ExCModel3DS.cpp.

Références ExCModel3DS(), Guard, et UnGuard.

00045 {
00046 Guard(ExCModel3DS::~ExCModel3DS(void))
00047 UnGuard
00048 }

ExCModel3DS::ExCModel3DS void   ) 
 

ExCModel3DS::~ExCModel3DS void   ) 
 


Documentation des méthodes

void ExCModel3DS::BuildArray int  Rendu  )  [protected]
 

void ExCModel3DS::BuildArray int  Rendu  )  [protected]
 

Définition à la ligne 49 du fichier ExCModel3DS.cpp.

Références BuildArray(), ExCVec2D::GetX(), ExCVec3D::GetX(), ExCVec2D::GetY(), ExCVec3D::GetY(), ExCVec3D::GetZ(), Guard, HasArray, m_VecObject, ExCVec2D::SetX(), ExCVec3D::SetX(), ExCVec2D::SetY(), ExCVec3D::SetY(), ExCVec3D::SetZ(), et UnGuard.

Référencé par BuildArray(), et Draw().

00050 {
00051 Guard(void ExCModel3DS::BuildArray(int Rendu))
00052         ExCVec3D VecAB,VecBC,VecCA,VecFace;
00053         ExCVec3D VecX,VecY,VecZ;
00054         ExCVec2D VecTAB,VecTBC,VecTCA;
00055                         
00056         for(unsigned int i=0;i<m_VecObject->size();i++)//draw all objects
00057         {
00058                 
00059                 m_VecObject->at(i).TabVertices= new float[m_VecObject->at(i).Faces.size()*9];
00060                 m_VecObject->at(i).TabTextures= new float[m_VecObject->at(i).Faces.size()*6];
00061 
00062                 for(unsigned int j=0;j<m_VecObject->at(i).Faces.size();j++)//draw all faces
00063                 {
00064                         VecFace.SetX(m_VecObject->at(i).Faces.at(j).vertIndex[0]);
00065                         VecFace.SetY(m_VecObject->at(i).Faces.at(j).vertIndex[1]);
00066                         VecFace.SetZ(m_VecObject->at(i).Faces.at(j).vertIndex[2]);
00067                         //----------------
00068                         //Texture coord
00069                         //----------------
00070                         VecTAB.SetX(m_VecObject->at(i).TexVerts.at(VecFace.GetX()).GetX());
00071                         VecTAB.SetY(m_VecObject->at(i).TexVerts.at(VecFace.GetX()).GetY());
00072 
00073                         VecTBC.SetX(m_VecObject->at(i).TexVerts.at(VecFace.GetY()).GetX());
00074                         VecTBC.SetY(m_VecObject->at(i).TexVerts.at(VecFace.GetY()).GetY());
00075 
00076                         VecTCA.SetX(m_VecObject->at(i).TexVerts.at(VecFace.GetZ()).GetX());
00077                         VecTCA.SetY(m_VecObject->at(i).TexVerts.at(VecFace.GetZ()).GetY());
00078 
00079                         m_VecObject->at(i).TabTextures[0+j*6]=VecTAB.GetX();
00080                         m_VecObject->at(i).TabTextures[1+j*6]=VecTAB.GetY();
00081                         m_VecObject->at(i).TabTextures[2+j*6]=VecTBC.GetX();
00082                         m_VecObject->at(i).TabTextures[3+j*6]=VecTBC.GetY();
00083                         m_VecObject->at(i).TabTextures[4+j*6]=VecTCA.GetX();
00084                         m_VecObject->at(i).TabTextures[5+j*6]=VecTCA.GetY();
00085                         //----------------
00086                         //Vertex coord
00087                         //----------------
00088                         VecX.SetX(m_VecObject->at(i).Verts.at(VecFace.GetX()).GetX());
00089                         VecX.SetY(m_VecObject->at(i).Verts.at(VecFace.GetX()).GetY());
00090                         VecX.SetZ(m_VecObject->at(i).Verts.at(VecFace.GetX()).GetZ());          
00091 
00092                         VecY.SetX(m_VecObject->at(i).Verts.at(VecFace.GetY()).GetX());
00093                         VecY.SetY(m_VecObject->at(i).Verts.at(VecFace.GetY()).GetY());
00094                         VecY.SetZ(m_VecObject->at(i).Verts.at(VecFace.GetY()).GetZ());
00095 
00096                         VecZ.SetX(m_VecObject->at(i).Verts.at(VecFace.GetZ()).GetX());
00097                         VecZ.SetY(m_VecObject->at(i).Verts.at(VecFace.GetZ()).GetY());
00098                         VecZ.SetZ(m_VecObject->at(i).Verts.at(VecFace.GetZ()).GetZ());
00099 
00100                         m_VecObject->at(i).TabVertices[0+j*9]=VecX.GetX();
00101                         m_VecObject->at(i).TabVertices[1+j*9]=VecX.GetY();
00102                         m_VecObject->at(i).TabVertices[2+j*9]=VecX.GetZ();
00103                         m_VecObject->at(i).TabVertices[3+j*9]=VecY.GetX();
00104                         m_VecObject->at(i).TabVertices[4+j*9]=VecY.GetY();
00105                         m_VecObject->at(i).TabVertices[5+j*9]=VecY.GetZ();
00106                         m_VecObject->at(i).TabVertices[6+j*9]=VecZ.GetX();
00107                         m_VecObject->at(i).TabVertices[7+j*9]=VecZ.GetY();
00108                         m_VecObject->at(i).TabVertices[8+j*9]=VecZ.GetZ();
00109                         }
00110         }
00111         HasArray=true;
00112 UnGuard
00113 }

void ExCModel3DS::BuildList int  Rendu  ) 
 

void ExCModel3DS::BuildList int  Rendu  ) 
 

Définition à la ligne 232 du fichier ExCModel3DS.cpp.

Références BuildList(), ExCVec2D::GetX(), ExCVec3D::GetX(), ExCVec2D::GetY(), ExCVec3D::GetY(), ExCVec3D::GetZ(), Guard, HasList, m_VecObject, ExCVec3D::m_Vector, ExCModel::ManagerTexture, ExManagerTexture::SetCurrentObject(), ExCVec2D::SetX(), ExCVec3D::SetX(), ExCVec2D::SetY(), ExCVec3D::SetY(), ExCVec3D::SetZ(), et UnGuard.

Référencé par BuildList(), et Draw().

00233 {
00234 Guard(void ExCModel3DS::BuildList(int Rendu))
00235                 
00236 //---------------------------------------------------
00237                 ExCVec3D VecAB,VecBC,VecCA,VecFace;
00238                 ExCVec3D VecX,VecY,VecZ;
00239                 ExCVec2D VecTAB,VecTBC,VecTCA;
00240                 glPushMatrix();
00241                 //ExCModel::Draw();
00242                 glDisable(GL_LIGHTING);
00243                 for(unsigned int i=0;i<m_VecObject->size();i++)//draw all objects
00244                 {
00245                         try
00246                         {
00247                                 glDeleteLists(m_VecObject->at(i).m_ListId,1);   //delete old list
00248                                 m_VecObject->at(i).m_ListId=glGenLists(1);      //Ask for a new free list
00249                                 glNewList(m_VecObject->at(i).m_ListId,GL_COMPILE);
00250                                 for(unsigned int j=0;j<m_VecObject->at(i).Faces.size();j++)//draw all faces
00251                                 {
00252                                         VecFace.SetX(m_VecObject->at(i).Faces.at(j).vertIndex[0]);
00253                                         VecFace.SetY(m_VecObject->at(i).Faces.at(j).vertIndex[1]);
00254                                         VecFace.SetZ(m_VecObject->at(i).Faces.at(j).vertIndex[2]);
00255                                         //----------------
00256                                         //Texture coord
00257                                         //----------------
00258                                         VecTAB.SetX(m_VecObject->at(i).TexVerts.at(VecFace.GetX()).GetX());
00259                                         VecTAB.SetY(m_VecObject->at(i).TexVerts.at(VecFace.GetX()).GetY());
00260 
00261                                         VecTBC.SetX(m_VecObject->at(i).TexVerts.at(VecFace.GetY()).GetX());
00262                                         VecTBC.SetY(m_VecObject->at(i).TexVerts.at(VecFace.GetY()).GetY());
00263 
00264                                         VecTCA.SetX(m_VecObject->at(i).TexVerts.at(VecFace.GetZ()).GetX());
00265                                         VecTCA.SetY(m_VecObject->at(i).TexVerts.at(VecFace.GetZ()).GetY());
00266                                         //----------------
00267                                         //Vertex coord
00268                                         //----------------
00269 
00270                                         VecX.SetX(m_VecObject->at(i).Verts.at(VecFace.GetX()).GetX());
00271                                         VecX.SetY(m_VecObject->at(i).Verts.at(VecFace.GetX()).GetY());
00272                                         VecX.SetZ(m_VecObject->at(i).Verts.at(VecFace.GetX()).GetZ());          
00273 
00274                                         VecY.SetX(m_VecObject->at(i).Verts.at(VecFace.GetY()).GetX());
00275                                         VecY.SetY(m_VecObject->at(i).Verts.at(VecFace.GetY()).GetY());
00276                                         VecY.SetZ(m_VecObject->at(i).Verts.at(VecFace.GetY()).GetZ());
00277 
00278                                         VecZ.SetX(m_VecObject->at(i).Verts.at(VecFace.GetZ()).GetX());
00279                                         VecZ.SetY(m_VecObject->at(i).Verts.at(VecFace.GetZ()).GetY());
00280                                         VecZ.SetZ(m_VecObject->at(i).Verts.at(VecFace.GetZ()).GetZ());
00281         
00282                                         ManagerTexture->SetCurrentObject(m_VecObject->at(i).Material);
00283 
00284                                         glColor3f(1.0f,1.0f,1.0f);
00285                                         glEnable(GL_TEXTURE_2D);
00286                                         glBegin(GL_TRIANGLES);
00287                                                 glTexCoord2f(VecTAB.GetX(),VecTAB.GetY());
00288                                                 glVertex3fv(VecX.m_Vector);                     
00289                                                 glTexCoord2f(VecTBC.GetX(),VecTBC.GetY());
00290                                                 glVertex3fv(VecY.m_Vector);                     
00291                                                 glTexCoord2f(VecTCA.GetX(),VecTCA.GetY());
00292                                                 glVertex3fv(VecZ.m_Vector);                     
00293                                         glEnd();
00294                                         glDisable(GL_TEXTURE_2D);
00295                                         
00296                                 }
00297                                 glEndList();
00298                         }catch (...) 
00299                         {
00300                                 std::cout<<"error building list"<<std::endl;
00301                         }
00302 
00303                 }
00304                 glPopMatrix();
00305 //---------------------------------------------------
00306                 
00307         HasList=true;   
00308         //std::cout<<"building list ok"<<//std::endl;
00309 UnGuard
00310 }

void ExCModel3DS::CallAllArray void   ) 
 

void ExCModel3DS::CallAllArray void   ) 
 

Définition à la ligne 214 du fichier ExCModel3DS.cpp.

Références CallAllArray(), Guard, m_VecObject, ExCModel::ManagerTexture, ExManagerTexture::ResetMultitexture(), ExManagerTexture::SetTexture(), et UnGuard.

Référencé par CallAllArray(), et Draw().

00215 {
00216 Guard(void ExCModel3DS::CallAllArray(void))
00217         for(unsigned int i=0;i<m_VecObject->size();i++)//draw all objects
00218         {
00219                 glDisable(GL_LIGHTING);
00220                 glColor3f(1.0f,1.0f,1.0f);
00221                 ManagerTexture->SetTexture(0,m_VecObject->at(i).Material);
00222                 glTexCoordPointer(2,GL_FLOAT,0,m_VecObject->at(i).TabTextures);
00223                 glEnableClientState(GL_VERTEX_ARRAY);
00224                 glVertexPointer(3,GL_FLOAT,0,m_VecObject->at(i).TabVertices);
00225                 glDrawArrays( GL_TRIANGLES, 0, m_VecObject->at(i).Faces.size()*3 );
00226                 ManagerTexture->ResetMultitexture();
00227         }
00228 UnGuard
00229 }

void ExCModel3DS::CallAllList void   )  [virtual]
 

Redéfinie à partir de ExCModel.

void ExCModel3DS::CallAllList void   )  [virtual]
 

Redéfinie à partir de ExCModel.

Définition à la ligne 204 du fichier ExCModel3DS.cpp.

Références CallAllList(), Guard, m_VecObject, et UnGuard.

Référencé par CallAllList(), et Draw().

00205 {
00206 Guard(void ExCModel3DS::CallAllList(void))
00207         for(unsigned int i=0;i<m_VecObject->size();i++)//draw all objects
00208         {
00209                 glCallList(m_VecObject->at(i).m_ListId);
00210         }
00211 UnGuard
00212 }

void ExCModel::DeCreaseCollisionCouter void   )  [inline, inherited]
 

Définition à la ligne 135 du fichier ExCModel.h.

Références ExCModel::m_CollisionCounter.

00135 {m_CollisionCounter--;}

void ExCModel3DS::Draw void   )  [virtual]
 

Redéfinie à partir de ExCModel.

void ExCModel3DS::Draw void   )  [virtual]
 

Redéfinie à partir de ExCModel.

Définition à la ligne 115 du fichier ExCModel3DS.cpp.

Références BuildArray(), BuildList(), ExCFrustum::CalculateFrustum(), CallAllArray(), CallAllList(), Draw(), ExCVec3D::GetX(), ExCVec3D::GetY(), ExCVec3D::GetZ(), Guard, HasArray, HasList, ExCModel::m_AlwaysDraw, ExCObject3D::m_Position, ExCModel::m_RenderMode, m_VecObject, ExCObject3D::m_Visible, ExCModel::ManagerTexture, ExCFrustum::PointInFrustum(), ProcessAllAction(), RENDER_DISPLAY_LIST, RENDER_TEXTURES, RENDER_VERTEX_ARRAY, ExManagerTexture::ResetMultitexture(), ExManagerTexture::SetTexture(), ExCVec3D::SetX(), ExCVec3D::SetY(), ExCVec3D::SetZ(), et UnGuard.

Référencé par Draw(), ExCMeshLOD3ds::Draw(), et ExCMesh3ds::Draw().

00116 {
00117 Guard(void ExCModel3DS::Draw(void))
00118 try
00119 {
00120         ExCVec3D VecAB,VecBC,VecCA,VecFace;
00121         ExCVec3D VecX,VecY,VecZ;
00122         bool DrawIt=false;
00123         ProcessAllAction();
00124         if(!m_Visible)return;
00125         if(HasList==false)BuildList(RENDER_TEXTURES);
00126         if(HasArray==false)BuildArray(RENDER_TEXTURES);
00127         glPushMatrix();
00128                 //ExCModel::Draw();
00129                 //glTranslatef(m_Position.GetX(),m_Position.GetY(),m_Position.GetZ());
00130                 glRotatef(-90,1,0,0);
00131                 if(m_AlwaysDraw)
00132                 {
00133                         switch(m_RenderMode)
00134                         {
00135                         case RENDER_VERTEX_ARRAY:CallAllArray();break;
00136                         case RENDER_DISPLAY_LIST:CallAllList();break;
00137                         }
00138                         
00139                         
00140                 }else
00141                 {
00142                         //Draw only objet in frustrum
00143                         ExCFrustum Frustrum;
00144                         Frustrum.CalculateFrustum();
00145                         for(unsigned int i=0;i<m_VecObject->size();i++)//draw all objects
00146                         {
00147                                 DrawIt=false;
00148                                 for(unsigned int j=0;j<m_VecObject->at(i).Faces.size();j++)//draw all faces
00149                                 {
00150                                         VecFace.SetX(m_VecObject->at(i).Faces.at(j).vertIndex[0]);
00151                                         VecFace.SetY(m_VecObject->at(i).Faces.at(j).vertIndex[1]);
00152                                         VecFace.SetZ(m_VecObject->at(i).Faces.at(j).vertIndex[2]);
00153                                         //----------------
00154                                         //Vertex coord
00155                                         //----------------
00156                                         VecX.SetX(m_VecObject->at(i).Verts.at(VecFace.GetX()).GetX());
00157                                         VecX.SetY(m_VecObject->at(i).Verts.at(VecFace.GetX()).GetY());
00158                                         VecX.SetZ(m_VecObject->at(i).Verts.at(VecFace.GetX()).GetZ());          
00159                                         VecY.SetX(m_VecObject->at(i).Verts.at(VecFace.GetY()).GetX());
00160                                         VecY.SetY(m_VecObject->at(i).Verts.at(VecFace.GetY()).GetY());
00161                                         VecY.SetZ(m_VecObject->at(i).Verts.at(VecFace.GetY()).GetZ());
00162                                         VecZ.SetX(m_VecObject->at(i).Verts.at(VecFace.GetZ()).GetX());
00163                                         VecZ.SetY(m_VecObject->at(i).Verts.at(VecFace.GetZ()).GetY());
00164                                         VecZ.SetZ(m_VecObject->at(i).Verts.at(VecFace.GetZ()).GetZ());
00165                                         VecX=VecX+m_Position;
00166                                         VecY=VecY+m_Position;
00167                                         VecZ=VecZ+m_Position;
00168                                         if(Frustrum.PointInFrustum(VecX.GetX(),VecX.GetY(),VecX.GetZ())){DrawIt=true;}
00169                                         if(Frustrum.PointInFrustum(VecY.GetX(),VecY.GetY(),VecY.GetZ())){DrawIt=true;}
00170                                         if(Frustrum.PointInFrustum(VecZ.GetX(),VecZ.GetY(),VecZ.GetZ())){DrawIt=true;}
00171                                 }
00172                                 if(DrawIt)
00173                                 {
00174                                         switch(m_RenderMode)
00175                                         {
00176                                         case RENDER_VERTEX_ARRAY:
00177                                                 //std::cout<<"vertexmode"<<std::endl;
00178                                                         glDisable(GL_LIGHTING);
00179                                                         glColor3f(1.0f,1.0f,1.0f);
00180                                                         ManagerTexture->SetTexture(0,m_VecObject->at(i).Material);
00181                                                         glTexCoordPointer(2,GL_FLOAT,0,m_VecObject->at(i).TabTextures);
00182                                                         glEnableClientState(GL_VERTEX_ARRAY);
00183                                                         glVertexPointer(3,GL_FLOAT,0,m_VecObject->at(i).TabVertices);
00184                                                         glDrawArrays( GL_TRIANGLES, 0, m_VecObject->at(i).Faces.size()*3 );
00185                                                         ManagerTexture->ResetMultitexture();
00186                                                 break;
00187                                         case RENDER_DISPLAY_LIST:
00188                                                 //std::cout<<"listmode"<<std::endl;
00189                                                 glCallList(m_VecObject->at(i).m_ListId);
00190                                                 break;
00191                                         }
00192                                 }
00193                         }
00194                 }
00195         
00196         glPopMatrix();
00197 }catch (...) 
00198 {
00199         std::cout<<"probleme"<<std::endl;
00200 }
00201 UnGuard
00202 }

void ExCModel::Forward void   )  [inherited]
 

Définition à la ligne 39 du fichier ExCModel.cpp.

Références ExCModel::Forward(), Guard, ExCObject3D::m_Position, ExCObject3D::m_Target, et UnGuard.

Référencé par ExCModel::Forward().

00040 {
00041 Guard(void ExCModel::Forward(void))
00042         m_Position=m_Position+m_Target; 
00043 UnGuard
00044 }

ExCVec3D ExCObject3D::GetAcceleration void   )  [inline, inherited]
 

Définition à la ligne 116 du fichier ExCObject3D.h.

Références ExCObject3D::m_Acceleration.

00116 {return m_Acceleration;}

float ExCObject3D::GetAngleX void   )  [inline, inherited]
 

Définition à la ligne 110 du fichier ExCObject3D.h.

Références ExCVec3D::GetX(), et ExCObject3D::m_Angle.

Référencé par ExCCameraFirst::Draw(), ExCCameraChase::Draw(), et ExCCamera::Draw().

00110 {return m_Angle.GetX();}

float ExCObject3D::GetAngleY void   )  [inline, inherited]
 

Définition à la ligne 111 du fichier ExCObject3D.h.

Références ExCVec3D::GetY(), et ExCObject3D::m_Angle.

Référencé par ExCCameraFirst::Draw(), ExCCameraChase::Draw(), et ExCCamera::Draw().

00111 {return m_Angle.GetY();}

float ExCObject3D::GetAngleZ void   )  [inline, inherited]
 

Définition à la ligne 112 du fichier ExCObject3D.h.

Références ExCVec3D::GetZ(), et ExCObject3D::m_Angle.

Référencé par ExCCameraFirst::Draw(), ExCCameraChase::Draw(), et ExCCamera::Draw().

00112 {return m_Angle.GetZ();}

ExCGizmo* ExCModel::GetCollisionGizmo void   )  [inline, inherited]
 

Définition à la ligne 133 du fichier ExCModel.h.

Références ExCModel::m_CollisionGizmo.

Référencé par ExManagerCollision::ResolveCollision().

00133 {return m_CollisionGizmo;}

int ExCModel::GetCurrentFrame void   )  [inline, inherited]
 

Définition à la ligne 121 du fichier ExCModel.h.

Références ExCModel::m_CurrentFrames.

00121 {return m_CurrentFrames; }

std::string ExCObject::GetFileName void   )  [inline, inherited]
 

Définition à la ligne 94 du fichier ExCObject.h.

Références ExCObject::m_ObjectFileName.

Référencé par ExManagerMap::InputAction().

00094 {return m_ObjectFileName;}

ExCVec3D ExCObject3D::GetGravity void   )  [inline, inherited]
 

Définition à la ligne 124 du fichier ExCObject3D.h.

Références ExCObject3D::m_Gravity.

00124 {return m_Gravity;}

ExNihilo::ExId ExCObject::GetId void   )  [inline, inherited]
 

Définition à la ligne 92 du fichier ExCObject.h.

Références ExNihilo::ExId, et ExCObject::m_ObjectId.

Référencé par ExCSystemeParticule::CreateNewParticle(), ExManagerModel::Load(), ExManagerMesh::Load(), ExManagerId::RecordObject(), ExCObject3D::ShowInfo(), et ExCModelMD2::ShowInfo().

00092 {return m_ObjectId;}

float ExCModel::GetInterpolationPourcentage void   )  [inline, inherited]
 

Définition à la ligne 123 du fichier ExCModel.h.

Références ExCModel::m_InterpolationPourcentage.

std::string ExCObject::GetName void   )  [inline, inherited]
 

Définition à la ligne 93 du fichier ExCObject.h.

Références ExCObject::m_ObjectName.

Référencé par ExManagerTexture::Add(), ExManagerInterface::Load(), ExManagerEntity::LoadGroupe(), ExManagerId::RecordObject(), ExManagerCollision::ResolveCollision(), ExCObject3D::ShowInfo(), et ExCModelMD2::ShowInfo().

00093 {return m_ObjectName;}

ExCVec3D ExCObject3D::GetOldPosition void   )  [inline, inherited]
 

Définition à la ligne 136 du fichier ExCObject3D.h.

Références ExCObject3D::m_OldPosition.

00136 {return m_OldPosition;}

ExCVec3D ExCObject3D::GetOldTarget void   )  [inline, inherited]
 

Définition à la ligne 140 du fichier ExCObject3D.h.

Références ExCObject3D::m_OldTarget.

00140 {return m_OldTarget;}

ExCVec3D ExCObject3D::GetPosition void   )  [inline, inherited]
 

Définition à la ligne 128 du fichier ExCObject3D.h.

Références ExCObject3D::m_Position.

Référencé par ExCCameraFirst::Draw(), ExCCameraChase::Draw(), ExManagerEntity::LoadGroupe(), ExManagerEntity::Reload(), et ExManagerCollision::ResolveCollision().

00128 {return m_Position;}

bool ExCObject3D::GetShowInfoState void   )  [inline, inherited]
 

Définition à la ligne 105 du fichier ExCObject3D.h.

Références ExCObject3D::m_ShowInfo.

00105 {return m_ShowInfo;}

ExCVec3D ExCObject3D::GetTarget void   )  [inline, inherited]
 

Définition à la ligne 132 du fichier ExCObject3D.h.

Références ExCObject3D::m_Target.

Référencé par ExCCameraFirst::Draw(), et ExManagerCollision::ResolveCollision().

00132 {return m_Target;}

std::string ExCObject::GetType void   )  [inline, inherited]
 

Définition à la ligne 95 du fichier ExCObject.h.

Références ExCObject::m_ObjectType.

Référencé par ExManagerId::RecordObject(), et ExManagerCollision::ResolveCollision().

00095 {return m_ObjectType;}

ExCVec3D ExCObject3D::GetVelocity void   )  [inline, inherited]
 

Définition à la ligne 120 du fichier ExCObject3D.h.

Références ExCObject3D::m_Velocity.

Référencé par ExManagerCollision::ResolveCollision().

00120 {return m_Velocity;}

bool ExCObject3D::GetVisibleState void   )  [inline, inherited]
 

Définition à la ligne 146 du fichier ExCObject3D.h.

Références ExCObject3D::m_Visible.

Référencé par InputAction().

00146 {return m_Visible;}

void ExCModel::IncreaseCollisionCouter void   )  [inline, inherited]
 

Définition à la ligne 134 du fichier ExCModel.h.

Références ExCModel::m_CollisionCounter.

Référencé par ExManagerCollision::ResolveCollision().

00134 {m_CollisionCounter++;}

ExCAction ExCModel3DS::InputAction ExCAction  Action  )  [virtual]
 

Redéfinie à partir de ExCModel.

ExCAction ExCModel3DS::InputAction ExCAction  Action  )  [virtual]
 

Redéfinie à partir de ExCModel.

Définition à la ligne 312 du fichier ExCModel3DS.cpp.

Références ExCObject3D::GetVisibleState(), IsAction(), LOOK_DOWN, LOOK_UP, ExCObject3D::m_Acceleration, ExCAction::m_Action, ExCModel::m_AlwaysDraw, ExCObject3D::m_Angle, ExCAction::m_Param, ExCObject3D::m_Position, ExCModel::m_RenderMode, m_VecAction, ExCObject3D::m_Velocity, MODEL_ALWAYS_DRAW_OFF, MODEL_ALWAYS_DRAW_ON, MODEL_HIDE, MODEL_JUMP, MODEL_SET_ACTION, MODEL_SET_ANGLE_X, MODEL_SET_ANGLE_Y, MODEL_SET_ANGLE_Z, MODEL_SET_POS_X, MODEL_SET_POS_Y, MODEL_SET_POS_Z, MODEL_SET_RENDER_MODE, MODEL_SHOW, MODEL_SHOW_COLLISION_SPHERE, MODEL_START_MOVE_FORWARD, MODEL_START_ROTATE_X_DOWN, MODEL_START_ROTATE_X_UP, MODEL_START_ROTATE_Y_DOWN, MODEL_START_ROTATE_Y_UP, MODEL_START_ROTATE_Z_DOWN, MODEL_START_ROTATE_Z_UP, MODEL_START_STRAFE_LEFT, MODEL_START_STRAFE_RIGHT, MODEL_STOP_ALL, MODEL_STOP_MOVE_FORWARD, MODEL_STOP_ROTATE_X_DOWN, MODEL_STOP_ROTATE_X_UP, MODEL_STOP_ROTATE_Y_DOWN, MODEL_STOP_ROTATE_Y_UP, MODEL_STOP_ROTATE_Z_DOWN, MODEL_STOP_ROTATE_Z_UP, MODEL_STOP_STRAFE_LEFT, MODEL_STOP_STREFA_RIGHT, MODEL_TOGGLE_ALWAYS_DRAW, MODEL_TOGGLE_VISIBLESTATE, NEXT_FRAME, ExCModel::NextFrame(), NOTHING, PREVIOUS_FRAME, SET_CURENT_FRAME, ExCVec3D::SetValue(), ExCObject3D::SetVisibleState(), ExCVec3D::SetX(), ExCVec3D::SetY(), ExCVec3D::SetZ(), START_ACTION, StartAction(), STOP_ACTION, ExCModel::StopAction(), TURN_LEFT, et TURN_RIGHT.

00313 {
00314         //std::cout<<"MODEL"<<Action;
00315         switch(Action.m_Action) 
00316         {
00317         case NEXT_FRAME:
00318                 NextFrame();
00319                 break;
00320         case PREVIOUS_FRAME:
00321                 break;
00322         case SET_CURENT_FRAME:
00323                 break;
00324         case START_ACTION:
00325                 StartAction(Action.m_Param);
00326                 break;
00327         case STOP_ACTION:
00328                 StopAction(Action.m_Param);
00329                 break;
00330         case TURN_LEFT:
00331                 StartAction("TURN_LEFT");
00332                 break;
00333         case TURN_RIGHT:
00334                 StartAction("TURN_RIGHT");
00335         case LOOK_UP:
00336                 StartAction(Action.m_Param);
00337                 break;
00338         case LOOK_DOWN:
00339                 StartAction(Action.m_Param);
00340                 break;
00341         case MODEL_SET_POS_X:
00342                 std::cout<<"MODEL"<<Action<<atof(Action.m_Param.data());
00343                 m_Position.SetX(atof(Action.m_Param.data()));
00344                 break;
00345         case MODEL_SET_POS_Y:
00346                 m_Position.SetY(atof(Action.m_Param.data()));
00347                 break;
00348         case MODEL_SET_POS_Z:
00349                 m_Position.SetZ(atof(Action.m_Param.data()));
00350                 break;
00351         case MODEL_SET_ANGLE_X:
00352                 m_Angle.SetX(atof(Action.m_Param.data()));
00353                 break;
00354         case MODEL_SET_ANGLE_Y:
00355                 m_Angle.SetY(atof(Action.m_Param.data()));
00356                 break;
00357         case MODEL_SET_ANGLE_Z:
00358                 m_Angle.SetZ(atof(Action.m_Param.data()));
00359                 break;
00360         case MODEL_START_ROTATE_Y_DOWN:
00361                 StartAction("TURN_RIGHT");
00362                 break;
00363         case MODEL_STOP_ROTATE_Y_DOWN:
00364                 StopAction("TURN_RIGHT");
00365                 if(!IsAction("RUN")){StartAction("IDLE");}
00366                 break;
00367         case MODEL_START_ROTATE_Y_UP:
00368                 StartAction("TURN_LEFT");
00369                 break;
00370         case MODEL_STOP_ROTATE_Y_UP:
00371                 StopAction("TURN_LEFT");
00372                 if(!IsAction("RUN")){StartAction("IDLE");}
00373                 break;
00374         case MODEL_START_ROTATE_Z_DOWN:
00375                 StartAction("LOOK_UP");
00376                 break;
00377         case MODEL_STOP_ROTATE_Z_DOWN:
00378                 StopAction("LOOK_UP");
00379                 break;
00380         case MODEL_START_ROTATE_Z_UP:
00381                 StartAction("LOOK_DOWN");
00382                 break;
00383         case MODEL_STOP_ROTATE_Z_UP:
00384                 StopAction("LOOK_DOWN");
00385                 break;
00386         case MODEL_START_ROTATE_X_DOWN:
00387                 StartAction("X_DOWN");
00388                 break;
00389         case MODEL_STOP_ROTATE_X_DOWN:
00390                 StopAction("X_DOWN");
00391                 break;
00392         case MODEL_START_ROTATE_X_UP:
00393                 StartAction("X_UP");
00394                 break;
00395         case MODEL_STOP_ROTATE_X_UP:
00396                 StopAction("X_UP");
00397                 break;
00398         case MODEL_START_MOVE_FORWARD:
00399                 StartAction("RUN");
00400                 m_Acceleration=m_Acceleration+0.01;
00401                 break;
00402         case MODEL_STOP_MOVE_FORWARD:
00403                 StopAction("RUN");
00404                 StartAction("IDLE");
00405                 m_Acceleration.SetValue(0.0f,0.0f,0.0f);
00406                 break;
00407         case MODEL_JUMP:
00408                 StartAction("JUMP");
00409                 break;
00410         case MODEL_SET_ACTION:
00411                 break;
00412         case MODEL_STOP_ALL:
00413                 m_VecAction.clear();
00414                 m_Velocity.SetValue(0.0f,0.0f,0.0f);
00415                 m_Acceleration.SetValue(0.0f,0.0f,0.0f);
00416                 break;
00417         case MODEL_SHOW_COLLISION_SPHERE:
00418 
00419                 break;
00420         case MODEL_START_STRAFE_LEFT:
00421                 StartAction("STRAFE_LEFT");
00422                 break;
00423         case MODEL_STOP_STRAFE_LEFT     :
00424                 StopAction("STRAFE_LEFT");
00425                 break;
00426         case MODEL_START_STRAFE_RIGHT:
00427                 StartAction("STRAFE_RIGHT");
00428                 break;
00429         case MODEL_STOP_STREFA_RIGHT:
00430                 StopAction("STRAFE_RIGHT");
00431                 break;
00432         case MODEL_TOGGLE_VISIBLESTATE:
00433                 SetVisibleState(!GetVisibleState());
00434                 //std::cout<<m_ObjectName<<" toggle"<<std::endl;
00435                 break;
00436         case MODEL_HIDE:
00437                 SetVisibleState(false);
00438                 //std::cout<<m_ObjectName<<" hide"<<std::endl;
00439                 break;
00440         case MODEL_SHOW:
00441                 SetVisibleState(true);
00442                 //std::cout<<m_ObjectName<<" show"<<std::endl;
00443                 break;
00444         case MODEL_TOGGLE_ALWAYS_DRAW:
00445                 m_AlwaysDraw=!m_AlwaysDraw;
00446                 break;
00447         case MODEL_ALWAYS_DRAW_ON:
00448                 m_AlwaysDraw=true;
00449                 break;
00450         case MODEL_ALWAYS_DRAW_OFF:
00451                 m_AlwaysDraw=false;
00452                 break;
00453         case MODEL_SET_RENDER_MODE:
00454                 m_RenderMode=atoi(Action.m_Param.data());
00455                 break;
00456         }
00457         return NOTHING;
00458 }

bool ExCModel3DS::IsAction std::string  Action  ) 
 

bool ExCModel3DS::IsAction std::string  Action  ) 
 

Définition à la ligne 533 du fichier ExCModel3DS.cpp.

Références Guard, IsAction(), m_IVecAction, m_VecAction, et UnGuard.

Référencé par InputAction(), IsAction(), et Process().

00534 {
00535         Guard(bool ExCModel3DS::IsAction(std::string Action))
00536                 for(m_IVecAction= m_VecAction.begin();m_IVecAction!= m_VecAction.end();m_IVecAction++)
00537                 {
00538                         if(strcmp(m_IVecAction->data(),Action.data())==0)
00539                         {
00540                                 return true;
00541                         }
00542                 }
00543                 return false;
00544                 UnGuard
00545 }

bool ExCModel3DS::Load std::string  FileName  )  [virtual]
 

Redéfinie à partir de ExCModel.

bool ExCModel3DS::Load std::string  FileName  )  [virtual]
 

Redéfinie à partir de ExCModel.

Définition à la ligne 555 du fichier ExCModel3DS.cpp.

Références tChunk::bytesRead, EDITKEYFRAME, FILEVERSION, Guard, HasList, tChunk::ID, tChunk::length, Load(), m_CurrentChunk, m_filePtr, m_VecMaterials, m_VecObject, numOfMaterials, numOfObjects, OBJECTINFO, PRIMARY, ReadChunk(), ReadObjectInfo(), Skip(), et UnGuard.

Référencé par Load(), et ExCMeshLOD3ds::Load().

00556 {
00557 Guard(bool ExCModel3DS::Load(std::string FileName))
00558 
00559         m_VecObject= new std::vector<t3DObject> ;
00560         numOfObjects=0;
00561         numOfMaterials=0;
00562         m_VecMaterials.clear();
00563         m_VecObject->clear();
00564         HasList=false;
00565         unsigned int version=0;
00566         int buffer[50000] = {0};
00567         char bufferc[255];memset(bufferc,0,255);
00568 
00569         
00570         m_filePtr = fopen(FileName.data(), "rb");
00571     if (m_filePtr == NULL) 
00572         {
00573                 throw ExCExpFileNotFound();
00574                 return false;
00575         }
00576         tChunk *chunk;
00577         chunk = new tChunk;
00578         ReadChunk(chunk);
00579         //------------------------------------------------------------------------------
00580         if(chunk->ID==PRIMARY)
00581         {
00582                 //std::cout<<"Primary chunk file lenght:"<<chunk->length<<//std::endl;
00583                 m_CurrentChunk = new tChunk;
00584                 while (chunk->bytesRead < chunk->length)
00585                 {
00586                         ReadChunk(m_CurrentChunk);
00587                         switch(m_CurrentChunk->ID)
00588                         {
00589                         case FILEVERSION:
00590                                 m_CurrentChunk->bytesRead += fread(&version, 1,m_CurrentChunk->length - m_CurrentChunk->bytesRead, m_filePtr);
00591                                 //std::cout<<"Read FILEVERSION :"<<version<<//std::endl;
00592                                 break;
00593                         case OBJECTINFO:
00594                                 //std::cout<<"Read OBJECTINFO"<<//std::endl;
00595                                 ReadObjectInfo(m_CurrentChunk);
00596                                 break;
00597                         case EDITKEYFRAME:
00598                                 //std::cout<<"Read EDITKEYFRAME"<<//std::endl;
00599                                 Skip(m_CurrentChunk);
00600                                 break;
00601                         default:
00602                                 //std::cout<<"Skip unused ,Chunk ID:"<<//std::hex<<m_CurrentChunk->ID<<" Chunk Lenght:"<<//std::dec<<m_CurrentChunk->length<<//std::endl;
00603                                 Skip(m_CurrentChunk);
00604                                 break;
00605                         }
00606                         chunk->bytesRead += m_CurrentChunk->bytesRead;
00607                 }
00608                 delete m_CurrentChunk;
00609                 m_CurrentChunk = chunk;
00610         }//end of if(chunk->ID==PRIMARY)
00611         //------------------------------------------------------------------------------
00612         fclose(m_filePtr);
00613         //BuildArray(0);
00614         return true;
00615 UnGuard
00616 }

bool ExCObject::LoadFile std::string  FileName  )  [virtual, inherited]
 

Redéfinie dans ExCAnimation, ExCEntity, ExCGroupEntity, ExCTexture, ExCInterface, ExCWindowTitleBar, ExCWindow, ExCWindowTitleBar, et ExCGizmoLineBezier.

Définition à la ligne 53 du fichier ExCObject.cpp.

Références Guard, ExCObject::LoadFile(), et UnGuard.

Référencé par ExCModelASC::ExCModelASC(), ExCObject::ExCObject(), ExCWindow::LoadFile(), et ExCObject::LoadFile().

00054 {
00055 Guard(bool ExCObject::LoadFile(std::string FileName))
00056         return true;
00057 UnGuard
00058 }  

void ExCModel::NextFrame void   )  [inherited]
 

Définition à la ligne 100 du fichier ExCModel.cpp.

Références Guard, ExCModel::m_CurrentFrames, ExCModel::m_numFrames, ExCModel::NextFrame(), et UnGuard.

Référencé par ExCModelMD2::InputAction(), InputAction(), et ExCModel::NextFrame().

00101 {
00102 Guard(void ExCModel::NextFrame(void))
00103         m_CurrentFrames++;
00104         if(m_CurrentFrames>m_numFrames)m_CurrentFrames=1;
00105 UnGuard
00106 }

void ExCModel::PreviousFrame void   )  [inherited]
 

Définition à la ligne 108 du fichier ExCModel.cpp.

Références Guard, ExCModel::m_CurrentFrames, ExCModel::m_numFrames, ExCModel::PreviousFrame(), et UnGuard.

Référencé par ExCModel::PreviousFrame().

00109 {
00110 Guard(void ExCModel::PreviousFrame(void))
00111         m_CurrentFrames--;
00112         if(m_CurrentFrames<1)m_CurrentFrames=m_numFrames;
00113 UnGuard
00114 }

void ExCModel3DS::Process std::string  Action  ) 
 

Redéfinie à partir de ExCModel.

void ExCModel3DS::Process std::string  Action  ) 
 

Redéfinie à partir de ExCModel.

Définition à la ligne 460 du fichier ExCModel3DS.cpp.

Références Cos, ExCVec3D::DecX(), ExCVec3D::DecY(), ExCVec3D::DecZ(), ExCVec3D::GetX(), ExCVec3D::GetY(), ExCVec3D::GetZ(), Guard, ExCVec3D::IncX(), ExCVec3D::IncY(), ExCVec3D::IncZ(), IsAction(), ExCObject3D::m_Angle, ExCModel::m_CurrentFrames, ExCObject3D::m_Position, Process(), ExCVec3D::SetX(), ExCVec3D::SetY(), ExCVec3D::SetZ(), Sin, StartAction(), ExCModel::StopAction(), et UnGuard.

Référencé par Process(), et ProcessAllAction().

00461 {
00462         Guard(void ExCModel3DS::Process(std::string Action))
00463                 if(m_Angle.GetX()<0)m_Angle.SetX(359);
00464         if(m_Angle.GetX()>359)m_Angle.SetX(0);
00465         if(m_Angle.GetY()<0)m_Angle.SetY(359);
00466         if(m_Angle.GetY()>359)m_Angle.SetY(0);
00467         if(m_Angle.GetZ()<0)m_Angle.SetZ(359);
00468         if(m_Angle.GetZ()>359)m_Angle.SetZ(0);
00469         //process action
00470         if(Action=="RUN")
00471         {
00472                 //m_Position=m_Target;
00473                 //return;
00474                 //m_Velocity.SetX(0.01f);
00475         }
00476         if(Action=="STRAFE_LEFT")
00477         {
00478                 float angle;
00479                 angle=m_Angle.GetY()+90;
00480                 if(angle>360)angle=angle-360;
00481                 m_Position=m_Position+ExCVec3D(Cos[(int)angle],0.0f,Sin[(int)angle]);
00482                 return;
00483         }
00484         if(Action=="STRAFE_RIGHT")
00485         {
00486                 float angle;
00487                 angle=m_Angle.GetY()+90;
00488                 if(angle>360)angle=angle-360;
00489                 m_Position=m_Position-ExCVec3D(Cos[(int)angle],0.0f,Sin[(int)angle]);
00490                 return;
00491         }
00492 
00493         if(Action=="TURN_LEFT"){m_Angle.DecY(2);return;}
00494         if(Action=="TURN_RIGHT"){m_Angle.IncY(2);return;}
00495         if(Action=="LOOK_UP"){m_Angle.IncZ(2);return;}
00496         if(Action=="LOOK_DOWN"){m_Angle.DecZ(2);return;}
00497         if(Action=="X_UP"){m_Angle.IncX(2);return;}
00498         if(Action=="X_DOWN"){m_Angle.DecX(2);return;}
00499         if(Action=="JUMP")
00500         {
00501                 if(m_CurrentFrames=72)
00502                 {
00503                         StopAction("JUMP");
00504                         if(!IsAction("RUN")){StartAction("IDLE");}
00505                 }
00506         }
00507         UnGuard
00508 }

void ExCModel3DS::ProcessAllAction void   ) 
 

void ExCModel3DS::ProcessAllAction void   ) 
 

Définition à la ligne 509 du fichier ExCModel3DS.cpp.

Références Guard, m_VecAction, Process(), ProcessAllAction(), et UnGuard.

Référencé par Draw(), et ProcessAllAction().

00510 {
00511         Guard(void ExCModel3DS::ProcessAllAction(void))
00512                 for(unsigned int i=0;i< m_VecAction.size();i++)
00513                 {
00514                         Process(m_VecAction.at(i));     
00515                 }
00516                 UnGuard
00517 }

void ExCModel3DS::ReadChunk tChunk chunk  )  [protected]
 

void ExCModel3DS::ReadChunk tChunk chunk  )  [protected]
 

Définition à la ligne 838 du fichier ExCModel3DS.cpp.

Références tChunk::bytesRead, Guard, tChunk::ID, tChunk::length, m_filePtr, et UnGuard.

Référencé par Load(), ReadFace(), ReadObject(), ReadObjectInfo(), et ReadObjectMaterial().

00839 {
00840 Guard(void ExCModel3DS::tChunk ReadChunk(tChunk *chunk))
00842         chunk->bytesRead = fread(&chunk->ID, 1, 2, m_filePtr);
00843         chunk->bytesRead += fread(&chunk->length, 1, 4, m_filePtr);
00847 UnGuard
00848 }

void ExCModel3DS::ReadFace t3DObject pObject,
tChunk chunk
[protected]
 

void ExCModel3DS::ReadFace t3DObject pObject,
tChunk chunk
[protected]
 

Définition à la ligne 885 du fichier ExCModel3DS.cpp.

Références tChunk::bytesRead, Guard, tChunk::ID, tChunk::length, ExManagerTexture::Load(), m_CurrentChunk, m_filePtr, ExCModel::ManagerTexture, OBJECT_MATERIAL, OBJECT_SMOOTH_GROUP, ReadChunk(), ReadFace(), Skip(), UnGuard, et tFace::vertIndex.

Référencé par ReadFace(), et ReadObject().

00886 {
00887 Guard(void ExCModel3DS::ReadFace(t3DObject *pObject,tChunk *chunk))
00888         int buffer[50000] = {0};                
00889         // Read in the number of vertices (int)
00890         tFace stFace;
00891         unsigned short face,index;
00892         chunk->bytesRead += fread(&face, 1,sizeof(unsigned short), m_filePtr);
00893         pObject->numOfFaces=face;
00895         
00896         // Go through all of the faces in this object
00897         for(int i = 0; i <face; i++)
00898         {
00899                 // Next, we read in the A then B then C index for the face, but ignore the 4th value.
00900                 // The fourth value is a visibility flag for 3D Studio Max, we don't care about this.
00901                 for(int j = 0; j < 4; j++)
00902                 {
00903                         // Read the first vertice index for the current face 
00904                         chunk->bytesRead += fread(&index, 1, sizeof(unsigned short), m_filePtr);
00905 
00906                         if(j < 3)
00907                         {
00908                                 // Store the index in our face structure.
00909                                 //pObject->pFaces[i].vertIndex[j] = index;
00910                                 stFace.vertIndex[j]=index;
00911                         }
00912                 }
00914                 pObject->Faces.push_back(stFace);
00915         }
00916         char b=0;
00917         std::string Material;
00918         m_CurrentChunk = new tChunk;
00919         while (chunk->bytesRead < chunk->length)
00920         {
00921                 ReadChunk(m_CurrentChunk);
00922                 switch(m_CurrentChunk->ID)
00923                 {
00924                 case OBJECT_MATERIAL:                                           
00925                         //std::cout<<"                          Read object face OBJECT_MATERIAL"<<//std::endl;
00926                         do
00927                         {
00928                                 m_CurrentChunk->bytesRead += fread(&b, 1, sizeof(char), m_filePtr);
00929                                 if(b!=0)Material=Material+b;
00930                         }while(b!=0);
00932                         pObject->Material=Material;
00933                         //std::cout<<"#"<<Material<<"#"<<//std::endl;
00934                         ManagerTexture->Load(Material);
00935                         Skip(m_CurrentChunk);
00936                         break;
00937                 case OBJECT_SMOOTH_GROUP:                                               
00938                         //std::cout<<"                          Read object face OBJECT_SMOOTH_GROUP"<<//std::endl;
00939                         Skip(m_CurrentChunk);
00940                         break;
00941         default:
00942                         //std::cout<<"                          Skip unused ,Chunk ID:"<<//std::hex<<m_CurrentChunk->ID<<" Chunk Lenght:"<<//std::dec<<m_CurrentChunk->length<<//std::endl;
00943                         Skip(m_CurrentChunk);
00944                         break;
00945                 }
00946                 chunk->bytesRead += m_CurrentChunk->bytesRead;
00947         }
00948         delete m_CurrentChunk;
00949         m_CurrentChunk = chunk;
00950 
00951 
00952         
00953 UnGuard
00954 }

void ExCModel3DS::ReadObject tChunk chunk  )  [protected]
 

void ExCModel3DS::ReadObject tChunk chunk  )  [protected]
 

Définition à la ligne 667 du fichier ExCModel3DS.cpp.

Références tChunk::bytesRead, Guard, tChunk::ID, tChunk::length, m_CurrentChunk, m_VecObject, OBJECT_FACES, OBJECT_MATERIAL, OBJECT_MESH, OBJECT_MESH_MATRIX, OBJECT_UV, OBJECT_VERTICES, ReadChunk(), ReadFace(), ReadObject(), ReadObjectMaterial(), ReadUVCoordinates(), ReadVertices(), Skip(), et UnGuard.

Référencé par ReadObject(), et ReadObjectInfo().

00668 {
00669 Guard(void ExCModel3DS::ReadObject(tChunk *chunk))
00670         int buffer[50000] = {0};
00671         t3DObject *pObject;
00672         pObject = new t3DObject;
00673         m_CurrentChunk = new tChunk;
00674         while (chunk->bytesRead < chunk->length)
00675         {
00676                 ReadChunk(m_CurrentChunk);
00677                 switch(m_CurrentChunk->ID)
00678                 {
00679                 case OBJECT_MESH:               
00680                         //std::cout<<"          Read object OBJECT_MESH"<<//std::endl;
00681                         ReadObject(m_CurrentChunk);
00682                         break;
00683                 case OBJECT_VERTICES:   
00684                         //std::cout<<"                  Read object OBJECT_VERTICES"<<//std::endl;
00685                         //Skip(m_CurrentChunk);
00686                         ReadVertices(pObject,m_CurrentChunk);
00687                         break;
00688         case OBJECT_FACES:              
00689                         //std::cout<<"                  Read object OBJECT_FACES"<<//std::endl;
00690                         ReadFace(pObject,m_CurrentChunk);
00691                         break;
00692         case OBJECT_MATERIAL:   
00693 
00694                         //std::cout<<"                  Read object OBJECT_MATERIAL"<<//std::endl;
00695                         ReadObjectMaterial(pObject,m_CurrentChunk);
00696                         break;
00697         case OBJECT_UV:
00698                         //std::cout<<"                  Read object OBJECT_UV"<<//std::endl;
00699                         ReadUVCoordinates(pObject,m_CurrentChunk);
00700                         break;
00701                 case OBJECT_MESH_MATRIX:
00702                         //std::cout<<"                  Read object OBJECT_MESH_MATRIX"<<//std::endl;
00703                         Skip(m_CurrentChunk);
00704                         break;
00705                 default:
00706                         //std::cout<<"                  Skip unused ,Chunk ID:"<<//std::hex<<m_CurrentChunk->ID<<" Chunk Lenght:"<<//std::dec<<m_CurrentChunk->length<<//std::endl;
00707                         Skip(m_CurrentChunk);
00708                         break;
00709                 }
00710                 chunk->bytesRead += m_CurrentChunk->bytesRead;
00711         }
00712         
00713         m_VecObject->push_back(*pObject);
00714         delete m_CurrentChunk;
00715         m_CurrentChunk = chunk;
00716 UnGuard
00717 }

void ExCModel3DS::ReadObjectInfo tChunk chunk  )  [protected]
 

void ExCModel3DS::ReadObjectInfo tChunk chunk  )  [protected]
 

Définition à la ligne 618 du fichier ExCModel3DS.cpp.

Références tChunk::bytesRead, Guard, tChunk::ID, tChunk::length, m_CurrentChunk, m_filePtr, MASTER_SCALE, MATERIAL, MESH_VERSION, OBJECT, ReadChunk(), ReadObject(), ReadObjectInfo(), ReadObjectMaterial(), Skip(), et UnGuard.

Référencé par Load(), et ReadObjectInfo().

00619 {
00620 Guard(void ExCModel3DS::ReadObjectInfo(tChunk *chunk))
00621                 int buffer[50000] = {0};
00622                 char bufferc[255],b;
00623                 std::string BuffObject;
00624                 m_CurrentChunk = new tChunk;
00625                 while (chunk->bytesRead < chunk->length)
00626                 {
00627                         ReadChunk(m_CurrentChunk);
00628                         switch(m_CurrentChunk->ID)
00629                         {
00630                         case MATERIAL:
00631                                 //std::cout<<"  Read MATERIAL"<<//std::endl;
00632                                 ReadObjectMaterial(m_CurrentChunk);
00633                                 break;
00634                         case OBJECT:
00635                                 memset(bufferc,0,255);
00636                                 //m_CurrentChunk->bytesRead += 8;
00637                                 //m_CurrentChunk->bytesRead += fread(&bufferc, 1,8, m_filePtr);
00639                                 BuffObject.erase(BuffObject.begin(),BuffObject.end());
00640                                 do
00641                                 {
00642                                         m_CurrentChunk->bytesRead += fread(&b, 1, sizeof(char), m_filePtr);
00643                                         if(b!=0)BuffObject=BuffObject+b;
00644                                 }while(b!=0);
00645                                 //std::cout<<"  Read OBJECT :"<<BuffObject<<//std::endl;
00646                                 ReadObject(m_CurrentChunk);
00647                                 break;
00648                         case MESH_VERSION:
00649                                 //std::cout<<"  Read MESH_VERSION"<<//std::endl;
00650                                 Skip(m_CurrentChunk);
00651                                 break;
00652                         case MASTER_SCALE:
00653                                 //std::cout<<"  Read MASTER_SCALE"<<//std::endl;
00654                                 Skip(m_CurrentChunk);
00655                                 break;
00656                         default:
00657                                 //std::cout<<"  Skip unused ,Chunk ID:"<<//std::hex<<m_CurrentChunk->ID<<" Chunk Lenght:"<<//std::dec<<m_CurrentChunk->length<<//std::endl;
00658                                 Skip(m_CurrentChunk);
00659                                 break;
00660                         }
00661                         chunk->bytesRead += m_CurrentChunk->bytesRead;
00662                 }
00663                 delete m_CurrentChunk;
00664                 m_CurrentChunk = chunk;
00665 UnGuard
00666 }

void ExCModel3DS::ReadObjectMaterial t3DObject pObject,
tChunk chunk
[protected]
 

void ExCModel3DS::ReadObjectMaterial tChunk chunk  )  [protected]
 

void ExCModel3DS::ReadObjectMaterial t3DObject pObject,
tChunk chunk
[protected]
 

Définition à la ligne 980 du fichier ExCModel3DS.cpp.

Références tChunk::bytesRead, Guard, m_filePtr, ReadObjectMaterial(), Skip(), et UnGuard.

00981 {
00982 Guard(void ExCModel3DS::ReadObjectMaterial(tChunk *chunk))
00983         char b=0;
00984         std::string Material;
00985         do
00986         {
00987                 chunk->bytesRead += fread(&b, 1, sizeof(char), m_filePtr);
00988                 Material=Material+b;
00989         }while(b!=0);
00990         //std::cout<<Material<<//std::endl;
00991         Skip(chunk);                    
00992 UnGuard
00993 }

void ExCModel3DS::ReadObjectMaterial tChunk chunk  )  [protected]
 

Définition à la ligne 719 du fichier ExCModel3DS.cpp.

Références tChunk::bytesRead, Guard, tChunk::ID, tChunk::length, m_CurrentChunk, m_filePtr, MAT3DWIRETHICKNESS, MATAMBIENTCOLOR, MATDIFFUSE, MATFACEMAP, MATMAP, MATMAPFILE, MATMAPFILTERINGBLUR, MATMAPOPTION, MATNAME, MATREFLECTBLUR, MATSELFILUM, MATSHININESS, MATSHININESSSTR, MATSOFTEN, MATSPECULAR, MATTRANSFALLOFF, MATTRANSFALLOFFIN, MATTRANSPARENCY, MATTRANSPARENCYADD, MATTWOSIDED, MATTYPE, MATWIREON, MATWIRETHICKNESS, ReadChunk(), ReadObjectMaterial(), Skip(), et UnGuard.

Référencé par ReadObject(), ReadObjectInfo(), et ReadObjectMaterial().

00720 {
00721 Guard(void ExCModel3DS::ReadObjectMaterial(tChunk *chunk))
00722                 int buffer[50000] = {0};
00723                 char bufferc[255];
00724                 m_CurrentChunk = new tChunk;
00725                 while (chunk->bytesRead < chunk->length)
00726                 {
00727                         ReadChunk(m_CurrentChunk);
00728                         switch(m_CurrentChunk->ID)
00729                         {
00730                         case MATNAME:                                                   
00731                                 memset(bufferc,0,255);                  
00732                                 m_CurrentChunk->bytesRead += fread(bufferc, 1, m_CurrentChunk->length - m_CurrentChunk->bytesRead, m_filePtr);
00733                                 //std::cout<<"          Read MATNAME:"<<bufferc<<//std::endl;
00734                                 break;
00735                         case MATAMBIENTCOLOR:                                           
00736                                 //std::cout<<"          Read MATAMBIENTCOLOR"<<//std::endl;
00737                                 Skip(m_CurrentChunk);
00738                                 break;
00739                         case MATDIFFUSE:                                                
00740                                 //std::cout<<"          Read MATDIFFUSE"<<//std::endl;
00741                                 Skip(m_CurrentChunk);
00742                                 break;
00743                         case MATSPECULAR:                                               
00744                                 //std::cout<<"          Read MATSPECULAR"<<//std::endl;
00745                                 Skip(m_CurrentChunk);
00746                                 break;
00747                         case MATSHININESS:                                              
00748                                 //std::cout<<"          Read MATSHININESS"<<//std::endl;
00749                                 Skip(m_CurrentChunk);
00750                                 break;
00751                         case MATSHININESSSTR:                                           
00752                                 //std::cout<<"          Read MATSHININESSSTR"<<//std::endl;
00753                                 Skip(m_CurrentChunk);
00754                                 break;
00755                         case MATTRANSPARENCY:                                           
00756                                 //std::cout<<"          Read MATTRANSPARENCY"<<//std::endl;
00757                                 Skip(m_CurrentChunk);
00758                                 break;
00759                         case MATTRANSFALLOFF:                                           
00760                                 //std::cout<<"          Read MATTRANSFALLOFF"<<//std::endl;
00761                                 Skip(m_CurrentChunk);
00762                                 break;
00763                         case MATREFLECTBLUR:                                            
00764                                 //std::cout<<"          Read MATREFLECTBLUR"<<//std::endl;
00765                                 Skip(m_CurrentChunk);
00766                                 break;
00767                         case MATTWOSIDED:                                               
00768                                 //std::cout<<"          Read MATTWOSIDED"<<//std::endl;
00769                                 Skip(m_CurrentChunk);
00770                                 break;
00771                         case MATTRANSPARENCYADD:                                                
00772                                 //std::cout<<"          Read MATTRANSPARENCYADD"<<//std::endl;
00773                                 Skip(m_CurrentChunk);
00774                                 break;
00775                         case MATSELFILUM:                                               
00776                                 //std::cout<<"          Read MATSELFILUM"<<//std::endl;
00777                                 Skip(m_CurrentChunk);
00778                                 break;
00779                         case MATWIREON:                                         
00780                                 //std::cout<<"          Read MATWIREON"<<//std::endl;
00781                                 Skip(m_CurrentChunk);
00782                                 break;
00783                         case MATWIRETHICKNESS:                                          
00784                                 //std::cout<<"          Read MATWIRETHICKNESS"<<//std::endl;
00785                                 Skip(m_CurrentChunk);
00786                                 break;
00787                         case MATFACEMAP:                                                
00788                                 //std::cout<<"          Read MATFACEMAP"<<//std::endl;
00789                                 Skip(m_CurrentChunk);
00790                                 break;
00791                         case MATTRANSFALLOFFIN:                                         
00792                                 //std::cout<<"          Read MATTRANSFALLOFFIN"<<//std::endl;
00793                                 Skip(m_CurrentChunk);
00794                                 break;
00795                         case MATSOFTEN:                                         
00796                                 //std::cout<<"          Read MATSOFTEN"<<//std::endl;
00797                                 Skip(m_CurrentChunk);
00798                                 break;
00799                         case MAT3DWIRETHICKNESS:                                                
00800                                 //std::cout<<"          Read MAT3DWIRETHICKNESS"<<//std::endl;
00801                                 Skip(m_CurrentChunk);
00802                                 break;
00803                         case MATTYPE:                                                   // This is the header for the texture info
00804                                 //std::cout<<"          Read MATTYPE"<<//std::endl;
00805                                 Skip(m_CurrentChunk);
00806                                 break;
00807                         case MATMAP:                                                    // This is the header for the texture info
00808                                 //std::cout<<"          Read MATMAP"<<//std::endl;
00809                                 ReadObjectMaterial(m_CurrentChunk);
00810                                 break;
00811                         case MATMAPFILE:                                                
00812                                 //std::cout<<"          Read MATMAPFILE"<<//std::endl;
00813                                 Skip(m_CurrentChunk);
00814                                 break;
00815                         case MATMAPOPTION:                                              
00816                                 //std::cout<<"          Read MATMAPOPTION"<<//std::endl;
00817                                 Skip(m_CurrentChunk);
00818                                 break;
00819                         case MATMAPFILTERINGBLUR:                                               
00820                                 //std::cout<<"          Read MATMAPFILTERINGBLUR"<<//std::endl;
00821                                 //Skip(m_CurrentChunk);
00822                                 Skip(m_CurrentChunk);
00823                                 break;
00824                         default:
00825                                 //std::cout<<"          Skip unused ,Chunk ID:"<<//std::hex<<m_CurrentChunk->ID<<" Chunk Lenght:"<<//std::dec<<m_CurrentChunk->length<<//std::endl;
00826                                 Skip(m_CurrentChunk);
00827                                 break;
00828                         }
00829                         chunk->bytesRead += m_CurrentChunk->bytesRead;
00830                 }
00831                 delete m_CurrentChunk;
00832                 m_CurrentChunk = chunk;
00833 UnGuard
00834 }

void ExCModel3DS::ReadUVCoordinates t3DObject pObject,
tChunk chunk
[protected]
 

void ExCModel3DS::ReadUVCoordinates t3DObject pObject,
tChunk chunk
[protected]
 

Définition à la ligne 956 du fichier ExCModel3DS.cpp.

Références tChunk::bytesRead, Guard, m_filePtr, ReadUVCoordinates(), ExCVec2D::SetX(), ExCVec2D::SetY(), Skip(), et UnGuard.

Référencé par ReadObject(), et ReadUVCoordinates().

00957 {
00958 Guard(void ExCModel3DS::ReadUVCoordinates(t3DObject *pObject,tChunk *chunk))
00959         int buffer[50000] = {0};                
00960         // Read in the number of vertices (int)
00961         unsigned short vert;
00962         chunk->bytesRead += fread(&vert, 1,sizeof(unsigned short), m_filePtr);
00963         pObject->numTexVertex=vert;
00965         float fl;
00966         ExCVec2D vec;
00967         for(int i=0;i<vert;i++)
00968         {
00969                 chunk->bytesRead += fread(&fl, 1,sizeof(float), m_filePtr);
00970                 vec.SetX(fl);
00971                 chunk->bytesRead += fread(&fl, 1,sizeof(float), m_filePtr);
00972                 vec.SetY(fl);
00974                 pObject->TexVerts.push_back(vec);
00975         }
00976         Skip(chunk);
00977 UnGuard
00978 }

void ExCModel3DS::ReadVertices t3DObject pObject,
tChunk chunk
[protected]
 

void ExCModel3DS::ReadVertices t3DObject pObject,
tChunk chunk
[protected]
 

Définition à la ligne 859 du fichier ExCModel3DS.cpp.

Références tChunk::bytesRead, Guard, m_filePtr, ReadVertices(), ExCVec3D::SetX(), ExCVec3D::SetY(), ExCVec3D::SetZ(), Skip(), et UnGuard.

Référencé par ReadObject(), et ReadVertices().

00860 {
00861 Guard(void ExCModel3DS::ReadVertices(t3DObject *pObject,tChunk *chunk))
00862         int buffer[50000] = {0};                
00863         // Read in the number of vertices (int)
00864         unsigned short vert;
00865         chunk->bytesRead += fread(&vert, 1,sizeof(unsigned short), m_filePtr);
00866         pObject->numOfVerts=vert;
00868         float fl;
00869         ExCVec3D vec;
00870         for(int i=0;i<vert;i++)
00871         {
00872                 chunk->bytesRead += fread(&fl, 1,sizeof(float), m_filePtr);
00873                 vec.SetX(fl);
00874                 chunk->bytesRead += fread(&fl, 1,sizeof(float), m_filePtr);
00875                 vec.SetY(fl);
00876                 chunk->bytesRead += fread(&fl, 1,sizeof(float), m_filePtr);
00877                 vec.SetZ(fl);
00879                 pObject->Verts.push_back(vec);
00880         }
00881         Skip(chunk);
00882 UnGuard
00883 }

void ExCModel::ResetCollisionCouter void   )  [inline, inherited]
 

Définition à la ligne 136 du fichier ExCModel.h.

Références ExCModel::m_CollisionCounter.

Référencé par ExManagerCollision::ResolveCollision().

00136 {m_CollisionCounter=0;}

void ExCObject3D::Rotate void   )  [inherited]
 

Définition à la ligne 134 du fichier ExCObject3D.cpp.

Références GetQuaternionFromEuler(), ExCVec3D::GetX(), ExCVec3D::GetY(), ExCVec3D::GetZ(), ExCObject3D::m_Angle, ExCVec3D::SetX(), ExCVec3D::SetY(), et ExCVec3D::SetZ().

Référencé par ExCObject3D::Rotate().

00135 {
00136         if(m_Angle.GetX()<0)m_Angle.SetX(359);
00137         if(m_Angle.GetX()>359)m_Angle.SetX(0);
00138         if(m_Angle.GetY()<0)m_Angle.SetY(359);
00139         if(m_Angle.GetY()>359)m_Angle.SetY(0);
00140         if(m_Angle.GetZ()<0)m_Angle.SetZ(359);
00141         if(m_Angle.GetZ()>359)m_Angle.SetZ(0);
00142         
00143         ExQuaternion quat;
00144         ExCMatrix4x4 Matr;
00145         ExCVec3D VecX,VecY,VecZ,VecDir;
00146         
00147         quat=GetQuaternionFromEuler(m_Angle.GetX(),m_Angle.GetY(),m_Angle.GetZ());
00148         //Matr=GetMatrixFromQuaternion(quat);
00149         //Matr=GetMatrixFromEuler(m_AngleX,m_AngleY,m_AngleZ);
00150         
00151         /*VecX.m_Vector[0]=(float)Matr.m_Matrix[0];
00152         VecX.m_Vector[1]=(float)Matr.m_Matrix[1];
00153         VecX.m_Vector[2]=(float)Matr.m_Matrix[2];
00154         VecY.m_Vector[0]=(float)Matr.m_Matrix[4];
00155         VecY.m_Vector[1]=(float)Matr.m_Matrix[5];
00156         VecY.m_Vector[2]=(float)Matr.m_Matrix[6];
00157         VecZ.m_Vector[0]=(float)Matr.m_Matrix[8];
00158         VecZ.m_Vector[1]=(float)Matr.m_Matrix[9];
00159         VecZ.m_Vector[2]=(float)Matr.m_Matrix[10];
00160 
00161         VecDir.m_Vector[0]=VecX.GetVectorLenght();
00162         VecDir.m_Vector[1]=VecY.GetVectorLenght();
00163         VecDir.m_Vector[2]=VecZ.GetVectorLenght();
00164         VecDir=VecX+VecY+VecZ;
00165         std::cout<<"Angle X:"<<m_AngleX<<" Y:"<<m_AngleY<<" Z:"<<m_AngleZ<<std::endl;
00166         std::cout<<"Quater :"<<quat<<std::endl;
00167         std::cout<<"Matrice:"<<Matr<<std::endl;
00168         std::cout<<"vec   X:"<<VecX<<std::endl;
00169         std::cout<<"vec   Y:"<<VecY<<std::endl;
00170         std::cout<<"vec   Z:"<<VecZ<<std::endl;
00171         std::cout<<"vec dir:"<<VecDir<<std::endl;
00172         std::cout<<"vel bef:"<<m_Velocity<<std::endl;
00173         //std::cout<<"vec aft:"<<m_Velocity<<std::endl;
00174         
00175 
00176         m_Target.SetX((Cos[(int)m_AngleY]));
00177         m_Target.SetZ((Sin[(int)m_AngleY]));
00178         m_Target.SetY((Sin[(int)m_AngleX]));
00179         std::cout<<"vec target:"<<m_Target<<std::endl;*/
00180         //VecDir=GetAxisFromQuaternion(quat);
00181         //m_Velocity=m_Velocity*VecDir;
00182         //std::cout<<"vec dir:"<<VecDir<<std::endl;
00183         //std::cout<<"vec vel:"<<m_Velocity<<std::endl;
00184         
00185 }

void ExCObject3D::Rotate float  angleX,
float  angleY,
float  angleZ
[inherited]
 

Définition à la ligne 126 du fichier ExCObject3D.cpp.

Références ExCObject3D::Rotate(), ExCObject3D::SetAngleX(), ExCObject3D::SetAngleY(), et ExCObject3D::SetAngleZ().

00127 {
00128         SetAngleX(angleX);
00129         SetAngleY(angleY);
00130         SetAngleZ(angleZ);
00131         Rotate();       
00132 }

void ExCObject3D::SetAcceleration float  x,
float  y,
float  z
[inline, inherited]
 

Définition à la ligne 115 du fichier ExCObject3D.h.

Références ExCObject3D::m_Acceleration.

00115 {m_Acceleration=ExCVec3D(x,y,z);}

void ExCObject3D::SetAcceleration ExCVec3D  Acceleration  )  [inline, inherited]
 

Définition à la ligne 114 du fichier ExCObject3D.h.

Références ExCObject3D::m_Acceleration.

00114 {m_Acceleration=Acceleration;}

void ExCObject3D::SetAngleX float  Angle  )  [inherited]
 

Définition à la ligne 106 du fichier ExCObject3D.cpp.

Références ExCVec3D::GetX(), ExCObject3D::m_Angle, et ExCVec3D::SetX().

Référencé par ExCObject3D::Rotate().

00107 {
00108         if(m_Angle.GetX()<0)m_Angle.SetX(359);
00109         if(m_Angle.GetX()>359)m_Angle.SetX(0);
00110 }

void ExCObject3D::SetAngleY float  Angle  )  [inherited]
 

Définition à la ligne 112 du fichier ExCObject3D.cpp.

Références ExCVec3D::GetY(), ExCObject3D::m_Angle, et ExCVec3D::SetY().

Référencé par ExCObject3D::Rotate().

00113 {
00114         if(m_Angle.GetY()<0)m_Angle.SetY(359);
00115         if(m_Angle.GetY()>359)m_Angle.SetY(0);
00116 }

void ExCObject3D::SetAngleZ float  Angle  )  [inherited]
 

Définition à la ligne 118 du fichier ExCObject3D.cpp.

Références ExCObject3D::m_Angle, et ExCVec3D::SetZ().

Référencé par ExCObject3D::Rotate().

00119 {
00120         /*if(m_AngleZ<0)m_AngleZ=359;
00121         if(m_AngleZ>359)m_AngleZ=0;*/
00122         m_Angle.SetZ(Angle);
00123 }

void ExCModel::SetCurrentFrame int  frame  )  [inherited]
 

Définition à la ligne 116 du fichier ExCModel.cpp.

Références Guard, ExCModel::m_CurrentFrames, ExCModel::m_numFrames, ExCModel::SetCurrentFrame(), et UnGuard.

Référencé par ExCModel::SetCurrentFrame().

00117 {
00118 Guard(void ExCModel::SetCurrentFrame(int frame))
00119   if(frame>0&&frame<m_numFrames)
00120         m_CurrentFrames=frame;
00121 UnGuard
00122 }

void ExCObject3D::SetCurrentState bool  state  )  [inline, inherited]
 

Définition à la ligne 101 du fichier ExCObject3D.h.

Références ExCObject3D::m_CurrentObject.

00101 {m_CurrentObject=state;}

void ExCObject::SetFileName std::string  FileName  )  [inline, inherited]
 

Définition à la ligne 98 du fichier ExCObject.h.

Références ExCObject::m_ObjectFileName.

Référencé par ExManagerModel::Load(), ExManagerMap::Load(), ExManagerEntity::Load(), ExCGizmoLineBezier::LoadFile(), ExCAnimation::LoadFile(), et ExManagerEntity::LoadGroupe().

00098 {m_ObjectFileName = FileName;}

void ExCObject::SetFlux std::ostrstream *  consol,
ExCFluxAction action
[inherited]
 

Définition à la ligne 66 du fichier ExCObject.cpp.

Références ExCObject::Consol, et ExCObject::FluxAction.

Référencé par ExManagerId::RecordObject().

00067 {
00068         Consol=consol;
00069         FluxAction=action;
00070 }

void ExCObject3D::SetGravity float  x,
float  y,
float  z
[inline, inherited]
 

Définition à la ligne 123 du fichier ExCObject3D.h.

Références ExCObject3D::m_Gravity.

00123 {m_Gravity=ExCVec3D(x,y,z);}

void ExCObject3D::SetGravity ExCVec3D  Gravity  )  [inline, inherited]
 

Définition à la ligne 122 du fichier ExCObject3D.h.

Références ExCObject3D::m_Gravity.

00122 {m_Gravity=Gravity;}

void ExCObject::SetId ExNihilo::ExId  Id  )  [inline, inherited]
 

Définition à la ligne 96 du fichier ExCObject.h.

Références ExNihilo::ExId, et ExCObject::m_ObjectId.

Référencé par ExCSystemeParticule::CreateNewParticle(), ExCObject::ExCObject(), ExManagerId::RecordObject(), et ExCObject::SetIdName().

00096 {m_ObjectId=Id;}

void ExCObject::SetIdName ExNihilo::IdName  idname  )  [inherited]
 

Définition à la ligne 47 du fichier ExCObject.cpp.

Références ExNihilo::IdName, ExCObject::SetId(), et ExCObject::SetName().

00048 {
00049         SetName(idname.second);
00050         SetId(idname.first);
00051 }

void ExCModel::SetInterpolationPourcentage float  inter  )  [inline, inherited]
 

Définition à la ligne 122 du fichier ExCModel.h.

Références ExCModel::m_InterpolationPourcentage.

void ExCModel::SetManagerTexture ExManagerTexture Texture  )  [inline, inherited]
 

Définition à la ligne 124 du fichier ExCModel.h.

Références ExCModel::ManagerTexture.

Référencé par ExCMesh3ds::Draw(), ExManagerModel::Load(), et ExCMeshLOD3ds::Load().

00124 {ManagerTexture = Texture;}

void ExCObject::SetName std::string  Name  )  [inline, inherited]
 

Redéfinie dans ExCTexture.

Définition à la ligne 97 du fichier ExCObject.h.

Références ExCObject::m_ObjectName.

Référencé par ExManagerCamera::AddCamera(), ExCAnimation::ExCAnimation(), ExCCamera::ExCCamera(), ExCCameraChase::ExCCameraChase(), ExCCameraFirst::ExCCameraFirst(), ExCCameraFlight::ExCCameraFlight(), ExCCameraFree::ExCCameraFree(), ExCEntity::ExCEntity(), ExCFont::ExCFont(), ExCGizmo::ExCGizmo(), ExCGizmoElipsoide::ExCGizmoElipsoide(), ExCGizmoFace::ExCGizmoFace(), ExCGizmoLine::ExCGizmoLine(), ExCGizmoLineBezier::ExCGizmoLineBezier(), ExCGizmoPoint::ExCGizmoPoint(), ExCGizmoRectangle::ExCGizmoRectangle(), ExCGizmoSphere::ExCGizmoSphere(), ExCGroupEntity::ExCGroupEntity(), ExCInterface::ExCInterface(), ExCLight::ExCLight(), ExCLoadingAnimation::ExCLoadingAnimation(), ExCMesh::ExCMesh(), ExCMesh3ds::ExCMesh3ds(), ExCMeshBilboarded::ExCMeshBilboarded(), ExCMeshFireEffect::ExCMeshFireEffect(), ExCMeshLOD3ds::ExCMeshLOD3ds(), ExCMeshSauronEffect::ExCMeshSauronEffect(), ExCMeshSmogEffect::ExCMeshSmogEffect(), ExCMeshSummonCylenderEffect::ExCMeshSummonCylenderEffect(), ExCMeshWaterDisqueEffect::ExCMeshWaterDisqueEffect(), ExCMeshWaterEffect::ExCMeshWaterEffect(), ExCModel3DS(), ExCModelASC::ExCModelASC(), ExCModelEXM::ExCModelEXM(), ExCModelMD2::ExCModelMD2(), ExCModelMD3::ExCModelMD3(), ExCModelOBJ::ExCModelOBJ(), ExCObject::ExCObject(), ExCObject2D::ExCObject2D(), ExCObject3D::ExCObject3D(), ExCParticule::ExCParticule(), ExCParticuleLine::ExCParticuleLine(), ExCParticulePoint::ExCParticulePoint(), ExCParticuleTexture::ExCParticuleTexture(), ExCSound::ExCSound(), ExCSpirit::ExCSpirit(), ExCSystemeParticule::ExCSystemeParticule(), ExCVertexProgram::ExCVertexProgram(), ExCWindowContent::ExCWindowContent(), ExCWindowControl::ExCWindowControl(), ExCWindowTitleBar::ExCWindowTitleBar(), ExManagerSpirit::Init(), ExManagerFont::Init(), ExCWindowTitleBar::Init(), ExCWindowObject::Init(), ExCWindowMessageBoxQuestion::Init(), ExCWindowMessageBox::Init(), ExCWindowLabel::Init(), ExCWindowEditLabel::Init(), ExCWindowButtonSwitchOnMouse::Init(), ExCWindowButtonSwitch::Init(), ExCWindowButton::Init(), ExCWindow::Init(), ExManagerModel::Load(), ExManagerMesh::Load(), ExCSystemeParticule::Load(), ExCModelASC::Load(), ExManagerLoad::LoadAnimationFile(), ExCGroupEntity::LoadFile(), ExCAnimation::LoadFile(), ExManagerEntity::LoadGroupe(), ExManagerSound::LoadSound(), ExManagerId::RecordObject(), et ExCObject::SetIdName().

00097 {m_ObjectName = Name;}

void ExCObject3D::SetOldPosition float  x,
float  y,
float  z
[inline, inherited]
 

Définition à la ligne 135 du fichier ExCObject3D.h.

Références ExCObject3D::m_OldPosition.

00135 {m_OldPosition=ExCVec3D(x,y,z);}

void ExCObject3D::SetOldPosition ExCVec3D  OldPosition  )  [inline, inherited]
 

Définition à la ligne 134 du fichier ExCObject3D.h.

Références ExCObject3D::m_OldPosition.

00134 {m_OldPosition=OldPosition;}

void ExCObject3D::SetOldTarget float  x,
float  y,
float  z
[inline, inherited]
 

Définition à la ligne 139 du fichier ExCObject3D.h.

Références ExCObject3D::m_OldTarget.

00139 {m_OldTarget=ExCVec3D(x,y,z);}

void ExCObject3D::SetOldTarget ExCVec3D  OldTarget  )  [inline, inherited]
 

Définition à la ligne 138 du fichier ExCObject3D.h.

Références ExCObject3D::m_OldTarget.

00138 {m_OldTarget=OldTarget;}

void ExCObject3D::SetPosition float  x,
float  y,
float  z
[inline, inherited]
 

Définition à la ligne 127 du fichier ExCObject3D.h.

Références ExCObject3D::m_Position.

00127 {m_Position=ExCVec3D(x,y,z);}

void ExCObject3D::SetPosition ExCVec3D  Position  )  [inline, inherited]
 

Définition à la ligne 126 du fichier ExCObject3D.h.

Références ExCObject3D::m_Position.

Référencé par ExCModelMD2::Draw(), et ExManagerEntity::LoadGroupe().

00126 {m_Position=Position;}

void ExCModel::SetRenderMode int  mode  )  [inline, inherited]
 

Définition à la ligne 139 du fichier ExCModel.h.

Références ExCModel::m_RenderMode.

00139 {m_RenderMode = mode;}

void ExCObject3D::SetShowInfoState bool  state  )  [inline, inherited]
 

Définition à la ligne 104 du fichier ExCObject3D.h.

Références ExCObject3D::m_ShowInfo.

Référencé par ExManagerCamera::InputAction().

00104 {m_ShowInfo=state;}

void ExCObject3D::SetTarget float  x,
float  y,
float  z
[inline, inherited]
 

Définition à la ligne 131 du fichier ExCObject3D.h.

Références ExCObject3D::m_Target.

00131 {m_Target=ExCVec3D(x,y,z);}

void ExCObject3D::SetTarget ExCVec3D  Target  )  [inline, inherited]
 

Définition à la ligne 130 du fichier ExCObject3D.h.

Références ExCObject3D::m_Target.

Référencé par ExManagerCollision::ResolveCollision().

00130 {m_Target=Target;}

void ExCObject::SetType std::string  Type  )  [inline, inherited]
 

Définition à la ligne 99 du fichier ExCObject.h.

Références ExCObject::m_ObjectType.

Référencé par ExCAnimation::ExCAnimation(), ExCCamera::ExCCamera(), ExCCameraChase::ExCCameraChase(), ExCCameraFirst::ExCCameraFirst(), ExCCameraFlight::ExCCameraFlight(), ExCCameraFree::ExCCameraFree(), ExCEntity::ExCEntity(), ExCFont::ExCFont(), ExCGizmo::ExCGizmo(), ExCGizmoElipsoide::ExCGizmoElipsoide(), ExCGizmoFace::ExCGizmoFace(), ExCGizmoLine::ExCGizmoLine(), ExCGizmoLineBezier::ExCGizmoLineBezier(), ExCGizmoPoint::ExCGizmoPoint(), ExCGizmoRectangle::ExCGizmoRectangle(), ExCGizmoSphere::ExCGizmoSphere(), ExCGroupEntity::ExCGroupEntity(), ExCInterface::ExCInterface(), ExCLight::ExCLight(), ExCLoadingAnimation::ExCLoadingAnimation(), ExCMesh::ExCMesh(), ExCMesh3ds::ExCMesh3ds(), ExCMeshBilboarded::ExCMeshBilboarded(), ExCMeshFireEffect::ExCMeshFireEffect(), ExCMeshLOD3ds::ExCMeshLOD3ds(), ExCMeshSauronEffect::ExCMeshSauronEffect(), ExCMeshSmogEffect::ExCMeshSmogEffect(), ExCMeshSummonCylenderEffect::ExCMeshSummonCylenderEffect(), ExCMeshWaterDisqueEffect::ExCMeshWaterDisqueEffect(), ExCMeshWaterEffect::ExCMeshWaterEffect(), ExCModel3DS(), ExCModelASC::ExCModelASC(), ExCModelEXM::ExCModelEXM(), ExCModelMD2::ExCModelMD2(), ExCModelMD3::ExCModelMD3(), ExCModelOBJ::ExCModelOBJ(), ExCObject::ExCObject(), ExCObject2D::ExCObject2D(), ExCObject3D::ExCObject3D(), ExCParticule::ExCParticule(), ExCParticuleLine::ExCParticuleLine(), ExCParticulePoint::ExCParticulePoint(), ExCParticuleTexture::ExCParticuleTexture(), ExCSound::ExCSound(), ExCSpirit::ExCSpirit(), ExCSystemeParticule::ExCSystemeParticule(), ExCTexture::ExCTexture(), ExCVertexProgram::ExCVertexProgram(), ExCWindowContent::ExCWindowContent(), ExCWindowControl::ExCWindowControl(), ExCWindowTitleBar::ExCWindowTitleBar(), ExCWindowObject::Init(), ExCWindowMessageBoxQuestion::Init(), ExCWindowMessageBox::Init(), ExCWindowLabel::Init(), ExCWindowEditLabel::Init(), ExCWindowButtonSwitchOnMouse::Init(), ExCWindowButtonSwitch::Init(), ExCWindowButton::Init(), ExCWindow::Init(), et ExManagerId::RecordObject().

00099 {m_ObjectType = Type;}

void ExCObject3D::SetVelocity float  x,
float  y,
float  z
[inline, inherited]
 

Définition à la ligne 119 du fichier ExCObject3D.h.

Références ExCObject3D::m_Velocity.

00119 {m_Velocity=ExCVec3D(x,y,z);}

void ExCObject3D::SetVelocity ExCVec3D  Velocity  )  [inline, inherited]
 

Définition à la ligne 118 du fichier ExCObject3D.h.

Références ExCObject3D::m_Velocity.

Référencé par ExManagerCollision::ResolveCollision().

00118 {m_Velocity=Velocity;}

void ExCObject3D::SetVisibleState bool  state  )  [inline, inherited]
 

Définition à la ligne 145 du fichier ExCObject3D.h.

Références ExCObject3D::m_Visible.

Référencé par ExCModel3DS(), ExCModelMD2::ExCModelMD2(), ExManagerEntity::InputAction(), et InputAction().

00145 {m_Visible=state;}

void ExCObject3D::ShowInfo void   )  [inherited]
 

Redéfinie dans ExCModelMD2.

Définition à la ligne 55 du fichier ExCObject3D.cpp.

Références ExCObject::GetId(), ExCObject::GetName(), ExCVec3D::GetX(), ExCVec3D::GetY(), ExCVec3D::GetZ(), Guard, ExCObject3D::m_Acceleration, ExCObject3D::m_Gravity, ExCObject3D::m_Life, ExCObject3D::m_Position, ExCObject3D::m_Velocity, ExCObject3D::ShowInfo(), UnGuard, et ExNihilo::WriteToScreen().

Référencé par ExCObject3D::ShowInfo().

00056 {
00057 Guard(void ExCObject3D::ShowInfo(void))
00058         
00059         char *CIdName;
00060         char *CPosition;
00061         char *CVelocity;
00062         char *CAcceleration;
00063         char *CGravity;
00064         char *CLife;
00065 
00066         CIdName= new char[strlen("Name : Id:")+strlen(GetName().data())+7];
00067         sprintf(CIdName,"Name :%s Id:%ld",GetName(),GetId());
00068 
00069         CPosition= new char[strlen("Position X: Y: Z:")+30];
00070         sprintf(CPosition,"Position X:%f Y:%f Z:%f",m_Position.GetX(),m_Position.GetY(),m_Position.GetZ());
00071 
00072         CVelocity= new char[strlen("Velocity X: Y: Z:")+30];
00073         sprintf(CVelocity,"Velocity X:%f Y:%f Z:%f",m_Velocity.GetX(),m_Velocity.GetY(),m_Velocity.GetZ());
00074 
00075         CGravity= new char[strlen("Gravity X: Y: Z:")+30];
00076         sprintf(CGravity,"Gravity X:%f Y:%f Z:%f",m_Gravity.GetX(),m_Gravity.GetY(),m_Gravity.GetZ());
00077 
00078         CAcceleration= new char[strlen("Acceleration X: Y: Z:")+30];
00079         sprintf(CAcceleration,"Acceleration X:%f Y:%f Z:%f",m_Acceleration.GetX(),m_Acceleration.GetY(),m_Acceleration.GetZ());
00080 
00081         CLife= new char[strlen("Life :")+10];
00082         sprintf(CLife,"Life :%f",m_Life);
00083 
00084                 ExNihilo::WriteToScreen(500,500,CIdName);       
00085                 ExNihilo::WriteToScreen(500,515,CPosition);
00086                 ExNihilo::WriteToScreen(500,530,CVelocity);     
00087                 ExNihilo::WriteToScreen(500,545,CAcceleration); 
00088                 ExNihilo::WriteToScreen(500,560,CGravity);      
00089                 ExNihilo::WriteToScreen(500,575,CLife); 
00090                 std::cout<<CIdName<<std::endl;  
00091                 std::cout<<CPosition<<std::endl;        
00092                 std::cout<<CVelocity<<std::endl;                
00093                 std::cout<<CAcceleration<<std::endl;            
00094                 std::cout<<CGravity<<std::endl;         
00095                 std::cout<<CLife<<std::endl;            
00096 
00097         delete CIdName;
00098         delete CPosition;
00099         delete CVelocity;
00100         delete CAcceleration;
00101         delete CGravity;
00102         delete CLife;   
00103 UnGuard
00104 }  

void ExCModel3DS::Skip tChunk chunk  )  [protected]
 

void ExCModel3DS::Skip tChunk chunk  )  [protected]
 

Définition à la ligne 850 du fichier ExCModel3DS.cpp.

Références tChunk::bytesRead, Guard, tChunk::length, m_filePtr, et UnGuard.

Référencé par Load(), ReadFace(), ReadObject(), ReadObjectInfo(), ReadObjectMaterial(), ReadUVCoordinates(), et ReadVertices().

00851 {
00852 Guard(void ExCModel3DS::tChunk Skip(tChunk *chunk))
00853         int buffer[50000] = {0};        
00855         chunk->bytesRead += fread(buffer, 1, chunk->length - chunk->bytesRead, m_filePtr);
00856 UnGuard
00857 }

void ExCModel3DS::StartAction std::string  Action  )  [virtual]
 

Redéfinie à partir de ExCModel.

void ExCModel3DS::StartAction std::string  Action  )  [virtual]
 

Redéfinie à partir de ExCModel.

Définition à la ligne 546 du fichier ExCModel3DS.cpp.

Références Guard, ExCModel::m_CurrentAction, m_VecAction, StartAction(), et UnGuard.

Référencé par InputAction(), Process(), et StartAction().

00547 {
00548         Guard(void ExCModel3DS::StartAction(std::string  Action))
00549                 m_VecAction.push_back(Action);
00550         m_CurrentAction=Action;
00551         UnGuard
00552 }

void ExCModel::StartRun void   )  [virtual, inherited]
 

Définition à la ligne 124 du fichier ExCModel.cpp.

Références Guard, ExCModel::StartRun(), et UnGuard.

Référencé par ExCModel::StartRun().

00125 {
00126 Guard(void ExCModel::StartRun(void))
00127         //m_CurrentFrames=40;
00128         //m_Transition=true;
00129 UnGuard
00130 }

void ExCModel::StopAction void   )  [virtual, inherited]
 

Définition à la ligne 146 du fichier ExCModel.cpp.

Références Guard, ExCModel::StopAction(), et UnGuard.

Référencé par ExCModelMD2::InputAction(), InputAction(), ExCModelMD2::Process(), Process(), et ExCModel::StopAction().

00147 {
00148 Guard(void ExCModel::StopAction(void))
00149 UnGuard
00150 }

void ExCModel3DS::StopAction std::string  Action  ) 
 

void ExCModel3DS::StopAction std::string  Action  ) 
 

Définition à la ligne 519 du fichier ExCModel3DS.cpp.

Références Guard, m_IVecAction, m_VecAction, StopAction(), et UnGuard.

Référencé par StopAction().

00520 {
00521         Guard(void ExCModel3DS::StopAction(std::string   Action))
00522                 for(m_IVecAction= m_VecAction.begin();m_IVecAction!= m_VecAction.end();m_IVecAction++)
00523                 {
00524                         if(strcmp(m_IVecAction->data(),Action.data())==0)
00525                         {
00526                                 m_VecAction.erase(m_IVecAction);
00527                                 return;
00528                         }
00529                 }       
00530                 UnGuard
00531 }

void ExCModel::StopRun void   )  [virtual, inherited]
 

Définition à la ligne 132 du fichier ExCModel.cpp.

Références Guard, ExCModel::StopRun(), et UnGuard.

Référencé par ExCModel::StopRun().

00133 {
00134 Guard(void ExCModel::StopRun(void))
00135         //m_CurrentFrames=1;
00136         //m_Transition=false; 
00137 UnGuard
00138 }


Documentation des données imbriquées

std::ostrstream* ExCObject::Consol [inherited]
 

Redéfinie dans ExCInterface, et ExCSystemeParticule.

Définition à la ligne 75 du fichier ExCObject.h.

Référencé par ExCTexture::LoadFile(), et ExCObject::SetFlux().

ExCFluxAction* ExCObject::FluxAction [inherited]
 

Définition à la ligne 76 du fichier ExCObject.h.

Référencé par ExCAnimation::Draw(), et ExCObject::SetFlux().

PFNGLBINDBUFFERARBPROC ExCModel3DS::glBindBufferARB [protected]
 

Définition à la ligne 206 du fichier tmp/ExCModel3DS.h.

PFNGLBUFFERDATAARBPROC ExCModel3DS::glBufferDataARB [protected]
 

Définition à la ligne 208 du fichier tmp/ExCModel3DS.h.

PFNGLGENBUFFERSARBPROC ExCModel3DS::glGenBuffersARB [protected]
 

Définition à la ligne 207 du fichier tmp/ExCModel3DS.h.

bool ExCModel3DS::HasArray
 

Définition à la ligne 211 du fichier tmp/ExCModel3DS.h.

Référencé par BuildArray(), Draw(), et ExCModel3DS().

bool ExCModel3DS::HasList
 

Définition à la ligne 210 du fichier tmp/ExCModel3DS.h.

Référencé par BuildList(), Draw(), ExCMesh3ds::Draw(), ExCModel3DS(), et Load().

ExCVec3D ExCObject3D::m_Acceleration [protected, inherited]
 

Redéfinie dans ExCParticule.

Définition à la ligne 71 du fichier ExCObject3D.h.

Référencé par ExCModel::Draw(), ExCObject3D::ExCObject3D(), ExCObject3D::GetAcceleration(), ExCModelMD2::InputAction(), InputAction(), ExCObject3D::SetAcceleration(), ExCObject3D::ShowInfo(), et ExCModelMD2::ShowInfo().

bool ExCModel::m_AlwaysDraw [inherited]
 

Définition à la ligne 115 du fichier ExCModel.h.

Référencé par Draw(), ExCModel3DS(), et InputAction().

ExCVec3D ExCObject3D::m_Angle [inherited]
 

Définition à la ligne 86 du fichier ExCObject3D.h.

Référencé par ExCSystemeParticule::Draw(), ExCModel::Draw(), ExCGroupEntity::Draw(), ExCEntity::Draw(), ExCCameraFlight::Draw(), ExCCameraFirst::Draw(), ExCCameraChase::Draw(), ExCCamera::Draw(), ExCAnimation::Draw(), ExCCamera::DrawCameraInfo(), ExCObject3D::ExCObject3D(), ExCObject3D::GetAngleX(), ExCObject3D::GetAngleY(), ExCObject3D::GetAngleZ(), ExManagerCamera::InputAction(), ExCModelMD2::InputAction(), InputAction(), ExCGroupEntity::LoadFile(), ExCEntity::LoadFile(), ExCAnimation::LoadFile(), ExManagerEntity::LoadGroupe(), ExCModelMD2::Process(), Process(), ExCCameraFlight::Process(), ExCCamera::Process(), ExManagerEntity::Reload(), ExCLight::Reset(), ExCObject3D::Rotate(), ExCObject3D::SetAngleX(), ExCObject3D::SetAngleY(), ExCObject3D::SetAngleZ(), et ExCModelMD2::ShowInfo().

int ExCModel::m_CollisionCounter [protected, inherited]
 

Définition à la ligne 103 du fichier ExCModel.h.

Référencé par ExCModel::DeCreaseCollisionCouter(), ExCModel3DS(), ExCModelMD2::ExCModelMD2(), ExCModel::IncreaseCollisionCouter(), et ExCModel::ResetCollisionCouter().

ExCGizmo* ExCModel::m_CollisionGizmo [protected, inherited]
 

Définition à la ligne 102 du fichier ExCModel.h.

Référencé par ExCModelMD2::Draw(), ExCModel3DS(), ExCModelEXM::ExCModelEXM(), ExCModelMD2::ExCModelMD2(), et ExCModel::GetCollisionGizmo().

std::string ExCModel::m_CurrentAction [protected, inherited]
 

Définition à la ligne 101 du fichier ExCModel.h.

Référencé par ExCModelMD2::StartAction(), et StartAction().

tChunk* ExCModel3DS::m_CurrentChunk [protected]
 

Définition à la ligne 192 du fichier tmp/ExCModel3DS.h.

tChunk* ExCModel3DS::m_CurrentChunk [protected]
 

Définition à la ligne 194 du fichier ExCModel3DS.h.

Référencé par Load(), ReadFace(), ReadObject(), ReadObjectInfo(), et ReadObjectMaterial().

int ExCModel::m_CurrentFrames [protected, inherited]
 

Définition à la ligne 93 du fichier ExCModel.h.

Référencé par ExCModelMD2::Draw(), ExCModelMD2::ExCModelMD2(), ExCModel::GetCurrentFrame(), ExCModel::NextFrame(), ExCModel::PreviousFrame(), ExCModelMD2::Process(), Process(), ExCModel::SetCurrentFrame(), et ExCModelMD2::StartAction().

bool ExCObject3D::m_CurrentObject [protected, inherited]
 

Définition à la ligne 79 du fichier ExCObject3D.h.

Référencé par ExCObject3D::ExCObject3D(), et ExCObject3D::SetCurrentState().

unsigned int* ExCModel3DS::m_FaceArray [protected]
 

Définition à la ligne 199 du fichier tmp/ExCModel3DS.h.

unsigned int* ExCModel3DS::m_FaceArray [protected]
 

Définition à la ligne 201 du fichier ExCModel3DS.h.

FILE* ExCModel3DS::m_filePtr [protected]
 

Définition à la ligne 171 du fichier tmp/ExCModel3DS.h.

FILE* ExCModel3DS::m_filePtr [protected]
 

Définition à la ligne 173 du fichier ExCModel3DS.h.

Référencé par Load(), ReadChunk(), ReadFace(), ReadObjectInfo(), ReadObjectMaterial(), ReadUVCoordinates(), ReadVertices(), et Skip().

ExCVec3D ExCObject3D::m_Gravity [protected, inherited]
 

Redéfinie dans ExCParticule.

Définition à la ligne 69 du fichier ExCObject3D.h.

Référencé par ExCModel::Draw(), ExCObject3D::ExCObject3D(), ExCObject3D::GetGravity(), ExCObject3D::SetGravity(), ExCObject3D::ShowInfo(), et ExCModelMD2::ShowInfo().

float ExCModel::m_Interpolation [protected, inherited]
 

Définition à la ligne 98 du fichier ExCModel.h.

Référencé par ExCModelMD2::Draw(), et ExCModelMD2::ExCModelMD2().

float ExCModel::m_InterpolationPourcentage [protected, inherited]
 

Définition à la ligne 96 du fichier ExCModel.h.

Référencé par ExCModelMD2::Draw(), ExCModelMD2::ExCModelMD2(), ExCModel::GetInterpolationPourcentage(), et ExCModel::SetInterpolationPourcentage().

std::vector<std::string>::iterator ExCModel3DS::m_IVecAction [protected]
 

Définition à la ligne 203 du fichier tmp/ExCModel3DS.h.

std::vector<std::string>::iterator ExCModel3DS::m_IVecAction [protected]
 

Définition à la ligne 205 du fichier ExCModel3DS.h.

Référencé par IsAction(), et StopAction().

int ExCModel::m_KeyFrameStartAction [protected, inherited]
 

Définition à la ligne 99 du fichier ExCModel.h.

Référencé par ExCModelMD2::Draw(), et ExCModelMD2::StartAction().

int ExCModel::m_KeyFrameStopAction [protected, inherited]
 

Définition à la ligne 100 du fichier ExCModel.h.

Référencé par ExCModelMD2::Draw(), et ExCModelMD2::StartAction().

double ExCObject3D::m_Life [protected, inherited]
 

Définition à la ligne 74 du fichier ExCObject3D.h.

Référencé par ExCObject3D::ExCObject3D(), ExCObject3D::ShowInfo(), et ExCModelMD2::ShowInfo().

GLuint ExCModel3DS::m_ListId [protected]
 

Définition à la ligne 194 du fichier tmp/ExCModel3DS.h.

Référencé par ExCModel3DS().

float ExCObject3D::m_Mass [protected, inherited]
 

Redéfinie dans ExCParticule.

Définition à la ligne 77 du fichier ExCObject3D.h.

Référencé par ExCObject3D::ExCObject3D().

int ExCModel::m_NextFrame [protected, inherited]
 

Définition à la ligne 94 du fichier ExCModel.h.

Référencé par ExCModelMD2::Draw(), et ExCModelMD2::ExCModelMD2().

int ExCModel::m_numFrames [protected, inherited]
 

Définition à la ligne 95 du fichier ExCModel.h.

Référencé par ExCModelMD2::Load(), ExCModel::NextFrame(), ExCModel::PreviousFrame(), et ExCModel::SetCurrentFrame().

std::string ExCObject::m_ObjectFileName [protected, inherited]
 

Définition à la ligne 72 du fichier ExCObject.h.

Référencé par ExCObject::GetFileName(), ExCTexture::LoadFile(), et ExCObject::SetFileName().

ExNihilo::ExId ExCObject::m_ObjectId [protected, inherited]
 

Définition à la ligne 70 du fichier ExCObject.h.

Référencé par ExCObject::GetId(), et ExCObject::SetId().

std::string ExCObject::m_ObjectName [protected, inherited]
 

Définition à la ligne 71 du fichier ExCObject.h.

Référencé par ExCObject::GetName(), ExCGroupEntity::LoadFile(), ExCEntity::LoadFile(), ExCTexture::SetName(), et ExCObject::SetName().

std::string ExCObject::m_ObjectType [protected, inherited]
 

Définition à la ligne 73 du fichier ExCObject.h.

Référencé par ExCObject::GetType(), et ExCObject::SetType().

ExCVec3D ExCObject3D::m_OldPosition [inherited]
 

Définition à la ligne 83 du fichier ExCObject3D.h.

Référencé par ExCParticule::Draw(), ExCModelMD2::Draw(), ExCObject3D::GetOldPosition(), et ExCObject3D::SetOldPosition().

ExCVec3D ExCObject3D::m_OldTarget [inherited]
 

Définition à la ligne 85 du fichier ExCObject3D.h.

Référencé par ExCObject3D::GetOldTarget(), et ExCObject3D::SetOldTarget().

ExCVec3D ExCObject3D::m_Position [inherited]
 

Redéfinie dans ExCParticule.

Définition à la ligne 82 du fichier ExCObject3D.h.

Référencé par ExCSystemeParticule::CalculateEmitPosition(), ExCModelMD2::Draw(), Draw(), ExCModel::Draw(), ExCMeshSmogEffect::Draw(), ExCMeshLOD3ds::Draw(), ExCMeshFireEffect::Draw(), ExCMeshBilboarded::Draw(), ExCLight::Draw(), ExCHeightMap::Draw(), ExCGroupEntity::Draw(), ExCEntity::Draw(), ExCCameraFlight::Draw(), ExCCameraFirst::Draw(), ExCCameraChase::Draw(), ExCCamera::Draw(), ExCAnimation::Draw(), ExCCamera::DrawCameraGizmo(), ExCCamera::DrawCameraInfo(), ExCObject3D::ExCObject3D(), ExCModel::Forward(), ExCObject3D::GetPosition(), ExCLight::GetPositionX(), ExCLight::GetPositionY(), ExCLight::GetPositionZ(), ExManagerCamera::InputAction(), ExCModelMD2::InputAction(), InputAction(), ExCHeightMap::Load(), ExCGroupEntity::LoadFile(), ExCEntity::LoadFile(), ExManagerEntity::LoadGroupe(), ExCModelMD2::Process(), Process(), ExCLight::Reset(), ExCObject3D::SetPosition(), ExCLight::SetPosition(), ExCLight::SetPositionX(), ExCLight::SetPositionY(), ExCLight::SetPositionZ(), ExCObject3D::ShowInfo(), et ExCModelMD2::ShowInfo().

double ExCObject3D::m_RefreshTime [protected, inherited]
 

Définition à la ligne 72 du fichier ExCObject3D.h.

Référencé par ExCObject3D::ExCObject3D().

int ExCModel::m_RenderMode [protected, inherited]
 

Définition à la ligne 105 du fichier ExCModel.h.

Référencé par Draw(), ExCModel3DS(), InputAction(), et ExCModel::SetRenderMode().

bool ExCObject3D::m_ShowInfo [protected, inherited]
 

Définition à la ligne 78 du fichier ExCObject3D.h.

Référencé par ExCCamera::ExCCamera(), ExCObject3D::ExCObject3D(), ExCObject3D::GetShowInfoState(), et ExCObject3D::SetShowInfoState().

float ExCObject3D::m_Size [protected, inherited]
 

Redéfinie dans ExCMeshBilboarded, ExCMeshFireEffect, ExCMeshWaterEffect, ExCMeshSmogEffect, et ExCParticule.

Définition à la ligne 76 du fichier ExCObject3D.h.

Référencé par ExCObject3D::ExCObject3D(), et ExCSkyBox::ExCSkyBox().

int ExCObject3D::m_speed [inherited]
 

Définition à la ligne 90 du fichier ExCObject3D.h.

Référencé par ExCModelMD2::Draw(), ExCCameraFlight::Draw(), ExCCamera::Draw(), ExCCamera::ExCCamera(), ExCModelMD2::ExCModelMD2(), et ExManagerCamera::InputAction().

float ExCObject3D::m_SphereRadius [inherited]
 

Définition à la ligne 91 du fichier ExCObject3D.h.

Référencé par ExCModelMD2::BuildSphere(), ExCModelMD2::ExCModelMD2(), et ExManagerCollision::ResolveCollision().

double ExCObject3D::m_StartingLife [protected, inherited]
 

Définition à la ligne 75 du fichier ExCObject3D.h.

Référencé par ExCObject3D::ExCObject3D().

ExCVec3D ExCObject3D::m_Target [inherited]
 

Définition à la ligne 84 du fichier ExCObject3D.h.

Référencé par ExCModel::Draw(), ExCCameraFlight::Draw(), ExCCameraFirst::Draw(), ExCCameraChase::Draw(), ExCCamera::Draw(), ExCCamera::DrawCameraGizmo(), ExCCamera::DrawCameraInfo(), ExCModel::Forward(), ExCObject3D::GetTarget(), ExCLight::GetTargetX(), ExCLight::GetTargetY(), ExCLight::GetTargetZ(), ExManagerCamera::InputAction(), ExCLight::Reset(), ExCObject3D::SetTarget(), ExCLight::SetTarget(), ExCLight::SetTargetX(), ExCLight::SetTargetY(), ExCLight::SetTargetZ(), et ExCModelMD2::ShowInfo().

tChunk* ExCModel3DS::m_TempChunk [protected]
 

Définition à la ligne 193 du fichier tmp/ExCModel3DS.h.

tChunk* ExCModel3DS::m_TempChunk [protected]
 

Définition à la ligne 195 du fichier ExCModel3DS.h.

float* ExCModel3DS::m_TextureArray [protected]
 

Définition à la ligne 200 du fichier tmp/ExCModel3DS.h.

float* ExCModel3DS::m_TextureArray [protected]
 

Définition à la ligne 202 du fichier ExCModel3DS.h.

bool ExCModel::m_Transition [protected, inherited]
 

Définition à la ligne 97 du fichier ExCModel.h.

Référencé par ExCModelMD2::Draw(), ExCModelMD2::ExCModelMD2(), et ExCModelMD2::StartAction().

ExCVec3D ExCObject3D::m_Up [protected, inherited]
 

Définition à la ligne 67 du fichier ExCObject3D.h.

Référencé par ExCCameraFlight::Draw(), ExCCameraChase::Draw(), et ExCCamera::Draw().

std::vector<std::string> ExCModel3DS::m_VecAction [protected]
 

Définition à la ligne 202 du fichier tmp/ExCModel3DS.h.

std::vector<std::string> ExCModel3DS::m_VecAction [protected]
 

Définition à la ligne 204 du fichier ExCModel3DS.h.

Référencé par InputAction(), IsAction(), ProcessAllAction(), StartAction(), et StopAction().

std::vector<tMaterialInfo> ExCModel3DS::m_VecMaterials [protected]
 

Définition à la ligne 189 du fichier tmp/ExCModel3DS.h.

std::vector<tMaterialInfo> ExCModel3DS::m_VecMaterials [protected]
 

Définition à la ligne 191 du fichier ExCModel3DS.h.

Référencé par Load().

std::vector<t3DObject>* ExCModel3DS::m_VecObject
 

Définition à la ligne 212 du fichier tmp/ExCModel3DS.h.

std::vector<t3DObject>* ExCModel3DS::m_VecObject
 

Définition à la ligne 210 du fichier ExCModel3DS.h.

Référencé par BuildArray(), BuildList(), CallAllArray(), CallAllList(), Draw(), ExCMesh3ds::Draw(), Load(), et ReadObject().

ExCVec3D ExCObject3D::m_Velocity [protected, inherited]
 

Redéfinie dans ExCParticule.

Définition à la ligne 68 du fichier ExCObject3D.h.

Référencé par ExCModel::Draw(), ExCModelMD2::ExCModelMD2(), ExCObject3D::ExCObject3D(), ExCObject3D::GetVelocity(), ExCModelMD2::InputAction(), InputAction(), ExCObject3D::SetVelocity(), ExCObject3D::ShowInfo(), et ExCModelMD2::ShowInfo().

float* ExCModel3DS::m_VertexArray [protected]
 

Définition à la ligne 198 du fichier tmp/ExCModel3DS.h.

float* ExCModel3DS::m_VertexArray [protected]
 

Définition à la ligne 200 du fichier ExCModel3DS.h.

bool ExCObject3D::m_Visible [inherited]
 

Définition à la ligne 92 du fichier ExCObject3D.h.

Référencé par ExCModelMD2::Draw(), Draw(), ExCMeshWaterDisqueEffect::Draw(), ExCMeshSummonCylenderEffect::Draw(), ExCMeshSmogEffect::Draw(), ExCMeshSauronEffect::Draw(), ExCMeshLOD3ds::Draw(), ExCMeshFireEffect::Draw(), ExCMeshBilboarded::Draw(), ExCMesh3ds::Draw(), ExCMesh::Draw(), ExCGroupEntity::Draw(), ExCGizmoSphere::Draw(), ExCGizmoLineBezier::Draw(), ExCEntity::Draw(), ExCEntity::ExCEntity(), ExCGroupEntity::ExCGroupEntity(), ExCObject3D::GetVisibleState(), ExCMesh3ds::Load(), ExCGroupEntity::LoadFile(), ExCEntity::LoadFile(), et ExCObject3D::SetVisibleState().

ExManagerTexture* ExCModel::ManagerTexture [protected, inherited]
 

Définition à la ligne 92 du fichier ExCModel.h.

Référencé par ExCModelASC::BuildList(), BuildList(), CallAllArray(), ExCModelMD2::Draw(), ExCModelEXM::Draw(), Draw(), ExCModelMD2::Load(), ExCModelASC::ProcessLine(), ReadFace(), et ExCModel::SetManagerTexture().

int ExCModel3DS::numOfMaterials [protected]
 

Définition à la ligne 188 du fichier tmp/ExCModel3DS.h.

Référencé par Load().

int ExCModel3DS::numOfObjects [protected]
 

Définition à la ligne 187 du fichier tmp/ExCModel3DS.h.

Référencé par Load().


La documentation associée à cette classe a été générée à partir des fichiers suivants :
Généré le Tue Oct 28 12:43:52 2003 pour ExNihilo par doxygen 1.3.4