ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

#include <meshx.h>

Inheritance diagram for Wintermute::MeshX:
Collaboration diagram for Wintermute::MeshX:

List of all members.

Public Member Functions

 MeshX (BaseGame *inGame)
virtual ~MeshX ()
virtual bool loadFromX (const Common::String &filename, XFileLexer &lexer, Common::Array< MaterialReference > &materialReferences)
bool findBones (FrameNode *rootFrame)
virtual bool update (FrameNode *parentFrame)
virtual bool render (ModelX *model)=0
bool updateShadowVol (ShadowVolume *shadow, Math::Matrix4 &modelMat, const Math::Vector3d &light, float extrusionDepth)
bool pickPoly (Math::Vector3d *pickRayOrig, Math::Vector3d *pickRayDir)
bool setMaterialSprite (const Common::String &matName, BaseSprite *sprite)
bool setMaterialTheora (const Common::String &matName, VideoTheoraPlayer *theora)
bool invalidateDeviceObjects ()
bool restoreDeviceObjects ()

Public Attributes

Math::Vector3d _BBoxStart
Math::Vector3d _BBoxEnd

Protected Member Functions

bool parsePositionCoords (XFileLexer &lexer)
bool parseFaces (XFileLexer &lexer, int faceCount, Common::Array< int > &indexCountPerFace)
bool parseTextureCoords (XFileLexer &lexer)
bool parseNormalCoords (XFileLexer &lexer)
bool parseMaterials (XFileLexer &lexer, int faceCount, const Common::String &filename, Common::Array< MaterialReference > &materialReferences, const Common::Array< int > &indexCountPerFace)
bool parseSkinWeights (XFileLexer &lexer)
bool parseVertexDeclaration (XFileLexer &lexer)
void updateBoundingBox ()
bool generateAdjacency ()
bool adjacentEdge (uint16 index1, uint16 index2, uint16 index3, uint16 index4)

Protected Attributes

float * _vertexData
float * _vertexPositionData
float * _vertexNormalData
uint32 _vertexCount
Common::Array< uint16_indexData
BaseArray< Math::Matrix4 * > _boneMatrices
BaseArray< SkinWeightsskinWeightsList
Common::Array< uint32_adjacency
BaseArray< Material * > _materials
BaseArray< int > _indexRanges
BaseArray< int > _materialIndices
uint32 _numAttrs
bool _skinnedMesh

Static Protected Attributes

static const int kVertexComponentCount = 8
static const int kPositionOffset = 5
static const int kTextureCoordOffset = 0
static const int kNormalOffset = 2
static const uint32 kNullIndex = 0xFFFFFFFF

Detailed Description

Definition at line 55 of file meshx.h.


Constructor & Destructor Documentation

Wintermute::MeshX::MeshX ( Wintermute::BaseGame inGame  ) 

Definition at line 42 of file meshx.cpp.

Wintermute::MeshX::~MeshX (  )  [virtual]

Definition at line 48 of file meshx.cpp.


Member Function Documentation

bool Wintermute::MeshX::adjacentEdge ( uint16  index1,
uint16  index2,
uint16  index3,
uint16  index4 
) [protected]

Definition at line 175 of file meshx.cpp.

bool Wintermute::MeshX::findBones ( FrameNode rootFrame  ) 

Definition at line 193 of file meshx.cpp.

bool Wintermute::MeshX::generateAdjacency (  )  [protected]

Definition at line 148 of file meshx.cpp.

bool Wintermute::MeshX::invalidateDeviceObjects (  ) 

Definition at line 439 of file meshx.cpp.

bool Wintermute::MeshX::loadFromX ( const Common::String filename,
XFileLexer lexer,
Common::Array< MaterialReference > &  materialReferences 
) [virtual]

Reimplemented in Wintermute::MeshXOpenGLShader.

Definition at line 57 of file meshx.cpp.

bool Wintermute::MeshX::parseFaces ( XFileLexer lexer,
int  faceCount,
Common::Array< int > &  indexCountPerFace 
) [protected]

Definition at line 478 of file meshx.cpp.

bool Wintermute::MeshX::parseMaterials ( XFileLexer lexer,
int  faceCount,
const Common::String filename,
Common::Array< MaterialReference > &  materialReferences,
const Common::Array< int > &  indexCountPerFace 
) [protected]

Definition at line 609 of file meshx.cpp.

bool Wintermute::MeshX::parseNormalCoords ( XFileLexer lexer  )  [protected]

Definition at line 539 of file meshx.cpp.

bool Wintermute::MeshX::parsePositionCoords ( XFileLexer lexer  )  [protected]

Definition at line 462 of file meshx.cpp.

bool Wintermute::MeshX::parseSkinWeights ( XFileLexer lexer  )  [protected]

Definition at line 685 of file meshx.cpp.

bool Wintermute::MeshX::parseTextureCoords ( XFileLexer lexer  )  [protected]

Definition at line 520 of file meshx.cpp.

bool Wintermute::MeshX::parseVertexDeclaration ( XFileLexer lexer  )  [protected]

Definition at line 734 of file meshx.cpp.

bool Wintermute::MeshX::pickPoly ( Math::Vector3d pickRayOrig,
Math::Vector3d pickRayDir 
)

Definition at line 389 of file meshx.cpp.

virtual bool Wintermute::MeshX::render ( ModelX model  )  [pure virtual]
bool Wintermute::MeshX::restoreDeviceObjects (  ) 

Definition at line 450 of file meshx.cpp.

bool Wintermute::MeshX::setMaterialSprite ( const Common::String matName,
BaseSprite sprite 
)

Definition at line 419 of file meshx.cpp.

bool Wintermute::MeshX::setMaterialTheora ( const Common::String matName,
VideoTheoraPlayer theora 
)

Definition at line 429 of file meshx.cpp.

bool Wintermute::MeshX::update ( FrameNode parentFrame  )  [virtual]

Reimplemented in Wintermute::MeshXOpenGLShader.

Definition at line 215 of file meshx.cpp.

void Wintermute::MeshX::updateBoundingBox (  )  [protected]

Definition at line 878 of file meshx.cpp.

bool Wintermute::MeshX::updateShadowVol ( ShadowVolume shadow,
Math::Matrix4 modelMat,
const Math::Vector3d light,
float  extrusionDepth 
)

Definition at line 301 of file meshx.cpp.


Member Data Documentation

Definition at line 108 of file meshx.h.

Definition at line 105 of file meshx.h.

Definition at line 103 of file meshx.h.

Definition at line 111 of file meshx.h.

Definition at line 112 of file meshx.h.

Definition at line 110 of file meshx.h.

Definition at line 113 of file meshx.h.

Definition at line 118 of file meshx.h.

Definition at line 102 of file meshx.h.

float* Wintermute::MeshX::_vertexData [protected]

Definition at line 99 of file meshx.h.

Definition at line 101 of file meshx.h.

Definition at line 100 of file meshx.h.

const int Wintermute::MeshX::kNormalOffset = 2 [static, protected]

Definition at line 81 of file meshx.h.

const uint32 Wintermute::MeshX::kNullIndex = 0xFFFFFFFF [static, protected]

Definition at line 84 of file meshx.h.

const int Wintermute::MeshX::kPositionOffset = 5 [static, protected]

Definition at line 79 of file meshx.h.

const int Wintermute::MeshX::kTextureCoordOffset = 0 [static, protected]

Definition at line 80 of file meshx.h.

const int Wintermute::MeshX::kVertexComponentCount = 8 [static, protected]

Definition at line 78 of file meshx.h.

Definition at line 106 of file meshx.h.


The documentation for this class was generated from the following files:


Generated on Sat Sep 26 2020 05:04:14 for ResidualVM by doxygen 1.7.1
curved edge   curved edge