#include <OgreMeshSerializer.h>
Inheritance diagram for Ogre::MeshSerializer:
Public Methods | |
MeshSerializer () | |
virtual | ~MeshSerializer () |
void | exportMesh (const Mesh *pMesh, const String &filename) |
Exports a mesh to the file specified. | |
void | importMesh (DataChunk &chunk, Mesh *pDest) |
Imports Mesh and (optionally) Material data from a .mesh file DataChunk. | |
Protected Types | |
typedef std::map< String, MeshSerializerImpl * > | MeshSerializerImplMap |
Protected Methods | |
virtual void | writeFileHeader (void) |
virtual void | writeChunkHeader (unsigned short id, unsigned long size) |
void | writeReals (const Real *pReal, size_t count) |
void | writeShorts (const unsigned short *pShort, size_t count) |
void | writeInts (const unsigned int *pInt, size_t count) |
void | writeLongs (const unsigned long *pLong, size_t count) |
void | writeBools (const bool *pLong, size_t count) |
void | writeObject (const Vector3 &vec) |
void | writeObject (const Quaternion &q) |
void | writeString (const String &string) |
void | writeData (const void *buf, size_t size, size_t count) |
virtual void | readFileHeader (DataChunk &chunk) |
virtual unsigned short | readChunk (DataChunk &chunk) |
void | readBools (DataChunk &chunk, bool *pDest, size_t count) |
void | readReals (DataChunk &chunk, Real *pDest, size_t count) |
void | readShorts (DataChunk &chunk, unsigned short *pDest, size_t count) |
void | readInts (DataChunk &chunk, unsigned int *pDest, size_t count) |
void | readLongs (DataChunk &chunk, unsigned long *pDest, size_t count) |
void | readObject (DataChunk &chunk, Vector3 *pDest) |
void | readObject (DataChunk &chunk, Quaternion *pDest) |
String | readString (DataChunk &chunk) |
String | readString (DataChunk &chunk, size_t numChars) |
virtual void | flipToLittleEndian (void *pData, size_t size, size_t count=1) |
virtual void | flipFromLittleEndian (void *pData, size_t size, size_t count=1) |
virtual void | flipEndian (void *pData, size_t size, size_t count) |
virtual void | flipEndian (void *pData, size_t size) |
Protected Attributes | |
MeshSerializerImplMap | mImplementations |
unsigned long | mCurrentChunkLen |
FILE * | mpfFile |
String | mVersion |
Static Protected Attributes | |
String | msCurrentVersion = "[MeshSerializer_v1.30]" |
To export a Mesh:
It's important to realise that this exporter uses OGRE terminology. In this context, 'Mesh' means a top-level mesh structure which can actually contain many SubMeshes, each of which has only one Material. Modelling packages may refer to these differently, for example in Milkshape, it says 'Model' instead of 'Mesh' and 'Mesh' instead of 'SubMesh', but the theory is the same.
Definition at line 58 of file OgreMeshSerializer.h.
|
Definition at line 85 of file OgreMeshSerializer.h. |
|
Definition at line 41 of file OgreMeshSerializer.cpp. References mImplementations, and msCurrentVersion. |
|
Definition at line 57 of file OgreMeshSerializer.cpp. References mImplementations. |
|
Exports a mesh to the file specified.
Definition at line 69 of file OgreMeshSerializer.cpp. References Except, mImplementations, msCurrentVersion, and Ogre::String. |
|
Definition at line 310 of file OgreSerializer.cpp. |
|
Definition at line 302 of file OgreSerializer.cpp. Referenced by Ogre::Serializer::flipFromLittleEndian(), and Ogre::Serializer::flipToLittleEndian(). |
|
Definition at line 295 of file OgreSerializer.cpp. References Ogre::Serializer::flipEndian(). Referenced by Ogre::Serializer::readInts(), Ogre::Serializer::readLongs(), Ogre::Serializer::readReals(), and Ogre::Serializer::readShorts(). |
|
Definition at line 288 of file OgreSerializer.cpp. References Ogre::Serializer::flipEndian(). Referenced by Ogre::Serializer::writeInts(), Ogre::Serializer::writeLongs(), Ogre::Serializer::writeReals(), and Ogre::Serializer::writeShorts(). |
|
Imports Mesh and (optionally) Material data from a .mesh file DataChunk.
Definition at line 81 of file OgreMeshSerializer.cpp. References Except, Ogre::Resource::getName(), Ogre::HEADER_CHUNK_ID, mImplementations, msCurrentVersion, Ogre::Serializer::readShorts(), Ogre::Serializer::readString(), Ogre::DataChunk::seek(), and Ogre::String. Referenced by Ogre::Mesh::load(). |
|
Definition at line 196 of file OgreSerializer.cpp. References free, malloc, and Ogre::DataChunk::read(). Referenced by Ogre::MeshSerializerImpl::readEdgeList(), Ogre::MeshSerializerImpl::readMesh(), Ogre::MeshSerializerImpl::readMeshLodInfo(), Ogre::MeshSerializerImpl::readMeshLodUsageGenerated(), and Ogre::MeshSerializerImpl::readSubMesh(). |
|
|
Definition at line 160 of file OgreSerializer.cpp. References Except, Ogre::HEADER_CHUNK_ID, Ogre::Serializer::mVersion, Ogre::Serializer::readShorts(), Ogre::Serializer::readString(), and Ogre::String. Referenced by Ogre::MeshSerializerImpl::importMesh(), and Ogre::SkeletonSerializer::importSkeleton(). |
|
Definition at line 224 of file OgreSerializer.cpp. References Ogre::Serializer::flipFromLittleEndian(), and Ogre::DataChunk::read(). Referenced by Ogre::MeshSerializerImpl_v1_2::readGeometry(), Ogre::MeshSerializerImpl::readGeometry(), Ogre::MeshSerializerImpl::readMeshBoneAssignment(), Ogre::MeshSerializerImpl::readMeshLodUsageGenerated(), Ogre::MeshSerializerImpl::readSubMesh(), and Ogre::MeshSerializerImpl::readSubMeshBoneAssignment(). |
|
Definition at line 230 of file OgreSerializer.cpp. References Ogre::Serializer::flipFromLittleEndian(), and Ogre::DataChunk::read(). Referenced by Ogre::Serializer::readChunk(), Ogre::MeshSerializerImpl::readEdgeList(), and Ogre::MeshSerializerImpl_v1_2::readGeometryColours(). |
|
Definition at line 278 of file OgreSerializer.cpp. References Ogre::Serializer::readReals(), Ogre::Quaternion::w, Ogre::Quaternion::x, Ogre::Quaternion::y, and Ogre::Quaternion::z. |
|
Definition at line 271 of file OgreSerializer.cpp. References Ogre::Serializer::readReals(), Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z. Referenced by Ogre::SkeletonSerializer::readBone(), and Ogre::SkeletonSerializer::readKeyFrame(). |
|
|
|
Definition at line 236 of file OgreSerializer.cpp. References Ogre::DataChunk::read(), and Ogre::String. |
|
Definition at line 245 of file OgreSerializer.cpp. References Ogre::DataChunk::readUpTo(), and Ogre::String. Referenced by importMesh(), Ogre::SkeletonSerializer::readAnimation(), Ogre::SkeletonSerializer::readBone(), Ogre::Serializer::readFileHeader(), Ogre::MeshSerializerImpl::readMeshLodUsageManual(), Ogre::MeshSerializerImpl::readSkeletonLink(), Ogre::MeshSerializerImpl::readSubMesh(), and Ogre::MeshSerializerImpl::readSubMeshNameTable(). |
|
Definition at line 127 of file OgreSerializer.cpp. References free, malloc, and Ogre::Serializer::writeData(). Referenced by Ogre::MeshSerializerImpl::writeEdgeList(), Ogre::MeshSerializerImpl::writeLodSummary(), Ogre::MeshSerializerImpl::writeLodUsageGenerated(), Ogre::MeshSerializerImpl::writeMesh(), and Ogre::MeshSerializerImpl::writeSubMesh(). |
|
|
Definition at line 148 of file OgreSerializer.cpp. References Ogre::Serializer::mpfFile. Referenced by Ogre::Serializer::writeBools(), Ogre::MeshSerializerImpl::writeGeometry(), Ogre::Serializer::writeInts(), Ogre::Serializer::writeLongs(), Ogre::Serializer::writeReals(), and Ogre::Serializer::writeShorts(). |
|
Definition at line 51 of file OgreSerializer.cpp. References Ogre::HEADER_CHUNK_ID, Ogre::Serializer::mVersion, Ogre::Serializer::writeShorts(), and Ogre::Serializer::writeString(). Referenced by Ogre::MeshSerializerImpl::exportMesh(), and Ogre::SkeletonSerializer::exportSkeleton(). |
|
Definition at line 97 of file OgreSerializer.cpp. References Ogre::Serializer::flipToLittleEndian(), free, malloc, and Ogre::Serializer::writeData(). Referenced by Ogre::MeshSerializerImpl::writeGeometry(), Ogre::MeshSerializerImpl::writeLodUsageGenerated(), Ogre::MeshSerializerImpl::writeMeshBoneAssignment(), Ogre::MeshSerializerImpl::writeSubMesh(), and Ogre::MeshSerializerImpl::writeSubMeshBoneAssignment(). |
|
Definition at line 112 of file OgreSerializer.cpp. References Ogre::Serializer::flipToLittleEndian(), free, malloc, and Ogre::Serializer::writeData(). Referenced by Ogre::Serializer::writeChunkHeader(), and Ogre::MeshSerializerImpl::writeEdgeList(). |
|
Definition at line 263 of file OgreSerializer.cpp. References Ogre::Quaternion::w, Ogre::Serializer::writeReals(), Ogre::Quaternion::x, Ogre::Quaternion::y, and Ogre::Quaternion::z. |
|
Definition at line 255 of file OgreSerializer.cpp. References Ogre::Serializer::writeReals(), Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z. Referenced by Ogre::SkeletonSerializer::writeBone(), and Ogre::SkeletonSerializer::writeKeyFrame(). |
|
|
|
Definition at line 153 of file OgreSerializer.cpp. References Ogre::Serializer::mpfFile, and Ogre::String. Referenced by Ogre::SkeletonSerializer::writeAnimation(), Ogre::SkeletonSerializer::writeBone(), Ogre::Serializer::writeFileHeader(), Ogre::MeshSerializerImpl::writeLodUsageManual(), Ogre::MeshSerializerImpl::writeSkeletonLink(), Ogre::MeshSerializerImpl::writeSubMesh(), and Ogre::MeshSerializerImpl::writeSubMeshNameTable(). |
|
Definition at line 48 of file OgreSerializer.h. Referenced by Ogre::Serializer::readChunk(), Ogre::SkeletonSerializer::readKeyFrame(), and Ogre::MeshSerializerImpl::readMesh(). |
|
Definition at line 86 of file OgreMeshSerializer.h. Referenced by exportMesh(), importMesh(), MeshSerializer(), and ~MeshSerializer(). |
|
Definition at line 49 of file OgreSerializer.h. Referenced by Ogre::MeshSerializerImpl::exportMesh(), Ogre::SkeletonSerializer::exportSkeleton(), Ogre::Serializer::writeData(), and Ogre::Serializer::writeString(). |
|
Definition at line 38 of file OgreMeshSerializer.cpp. Referenced by exportMesh(), importMesh(), and MeshSerializer(). |
|
Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:51:13 2004