TalanSoft Toolkits  201707
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Member Functions | List of all members
iSceneMesh Struct Referenceabstract
Inheritance diagram for iSceneMesh:
iSerializable iUnknown

Detailed Description

Scene mesh interface.

Public Member Functions

virtual iSceneMeshClone () const =0
 Create a copy of the mesh. More...
 
virtual void SetName (const achar *aaszName)=0
 Set the mesh's name. {Property}. More...
 
virtual const acharGetName () const =0
 Get the mesh's name. {Property}. More...
 
virtual tVec3fCVecGetVertices () const =0
 Get the mesh's vertices. {Property}. More...
 
virtual tVec3fCVecGetNormals () const =0
 Get the mesh's normals. {Property}. More...
 
virtual void SetNumTextureChannels (tU32 anNumChannels)=0
 Set the number of texture coordinate channels. {Property}. More...
 
virtual tU32 GetNumTextureChannels () const =0
 Get the number of texture coordinate channels. {Property}. More...
 
virtual tVec2fCVecGetTexCoos (tU32 anIndex) const =0
 Get the mesh's texture coordinates. {Property}. More...
 
virtual tU32CVecGetVertexColors () const =0
 Get the mesh's vertices colors. {Property}. More...
 
virtual tSceneFaceCVecGetFaces () const =0
 Get the mesh's faces. {Property}. More...
 
virtual tScenePatchCVecGetPatches () const =0
 Get the mesh's patches. {Property}. More...
 
virtual tSceneMaterialCVecGetMaterials () const =0
 Get the mesh's materials. {Property}. More...
 
virtual void SetNumVerticesBeforeDuplication (tU32 anV)=0
 Set number of vertices before duplication. {Property}. More...
 
virtual tU32 GetNumVerticesBeforeDuplication () const =0
 Get number of vertices before duplication. {Property}. More...
 
virtual tU32CVecGetDuplicationIndices () const =0
 Get duplication indices. {Property}. More...
 
virtual void SetMaxWeightsPerVertex (tU16 anV)=0
 Set max weights per vertex. {Property}. More...
 
virtual tU16 GetMaxWeightsPerVertex () const =0
 Get max weights per vertex. {Property}. More...
 
virtual void SetMaxWeightsPerFace (tU16 anV)=0
 Set max weights per face. {Property}. More...
 
virtual tU16 GetMaxWeightsPerFace () const =0
 Get max weights per face. {Property}. More...
 
virtual tSceneBoneCVecGetBones () const =0
 Get the mesh's bones. {Property}. More...
 
virtual tFVF GetFVF () const =0
 Get the FVF that matches this mesh's data the most closely. {Property}. More...
 
virtual void CopyVertexToFVFStream (const cFVFStream &aStream, tU32 anDestIndex, tU32 anMeshVertIndex, const sMatrixf &amtxWorld, iBoundingVolume *apBV, tSceneMeshCopyToFVFStreamFlags aFlags)=0
 Copy a vertex to the specified FVF stream. More...
 
virtual void CopyVerticesToFVFStream (const cFVFStream &aStream, tU32 anDestIndex, tU32 anMeshFirstVertex, tU32 anMeshNumVertex, const sMatrixf &amtxWorld, iBoundingVolume *apBV, tSceneMeshCopyToFVFStreamFlags aFlags)=0
 Copy all the vertices of the scene to specifeid FVF stream. More...
 
virtual tBool CopySkinInfosToFVFStream (const cFVFStream &aStream, tU32 anDestIndex, const tU32CVec &avBoneIndices)=0
 Copy the skining infos of the vertices to the specified fvf stream. More...
 
virtual tBool TransformVertices (const sMatrixf &aMatrix)=0
 Transform all the vertices by the given matrix. More...
 
virtual tBool ReverseFaces ()=0
 Reverse the faces. More...
 
- Public Member Functions inherited from iSerializable
virtual const acharGetSerializeObjectTypeID () const =0
 Get the object type ID. More...
 
virtual tSize Serialize (iFile *apFile, eSerializeMode aMode)=0
 Serialize the object. More...
 
- Public Member Functions inherited from iUnknown
virtual tBool IsOK () const =0
 Check if the object is valid. More...
 
virtual tI32 AddRef ()=0
 Signal that one more reference of the object has been created. More...
 
virtual tI32 Release ()=0
 Release a reference of the object. More...
 
virtual void DeleteThis ()=0
 Bypass any reference counting and delete this object. More...
 
virtual void Invalidate ()=0
 Invalidate the object. More...
 
virtual iUnknownQueryInterface (const tUUID &aIID)=0
 Query an interface. More...
 
virtual void ListInterfaces (iMutableCollection *apLst, tU32 anFlags) const =0
 Fill a UUID list containing the UUIDs of the implemented interfaces. More...
 
virtual tI32 SetNumRefs (tI32 anNumRefs)=0
 Set the reference counter directly. More...
 
virtual tI32 GetNumRefs () const =0
 Get the number of references to this object. More...
 

Member Function Documentation

virtual iSceneMesh* Clone ( ) const
pure virtual

Create a copy of the mesh.

virtual void SetName ( const achar aaszName)
pure virtual

Set the mesh's name. {Property}.

virtual const achar* GetName ( ) const
pure virtual

Get the mesh's name. {Property}.

virtual tVec3fCVec* GetVertices ( ) const
pure virtual

Get the mesh's vertices. {Property}.

virtual tVec3fCVec* GetNormals ( ) const
pure virtual

Get the mesh's normals. {Property}.

virtual void SetNumTextureChannels ( tU32  anNumChannels)
pure virtual

Set the number of texture coordinate channels. {Property}.

virtual tU32 GetNumTextureChannels ( ) const
pure virtual

Get the number of texture coordinate channels. {Property}.

virtual tVec2fCVec* GetTexCoos ( tU32  anIndex) const
pure virtual

Get the mesh's texture coordinates. {Property}.

virtual tU32CVec* GetVertexColors ( ) const
pure virtual

Get the mesh's vertices colors. {Property}.

virtual tSceneFaceCVec* GetFaces ( ) const
pure virtual

Get the mesh's faces. {Property}.

virtual tScenePatchCVec* GetPatches ( ) const
pure virtual

Get the mesh's patches. {Property}.

virtual tSceneMaterialCVec* GetMaterials ( ) const
pure virtual

Get the mesh's materials. {Property}.

virtual void SetNumVerticesBeforeDuplication ( tU32  anV)
pure virtual

Set number of vertices before duplication. {Property}.

virtual tU32 GetNumVerticesBeforeDuplication ( ) const
pure virtual

Get number of vertices before duplication. {Property}.

virtual tU32CVec* GetDuplicationIndices ( ) const
pure virtual

Get duplication indices. {Property}.

virtual void SetMaxWeightsPerVertex ( tU16  anV)
pure virtual

Set max weights per vertex. {Property}.

virtual tU16 GetMaxWeightsPerVertex ( ) const
pure virtual

Get max weights per vertex. {Property}.

virtual void SetMaxWeightsPerFace ( tU16  anV)
pure virtual

Set max weights per face. {Property}.

virtual tU16 GetMaxWeightsPerFace ( ) const
pure virtual

Get max weights per face. {Property}.

virtual tSceneBoneCVec* GetBones ( ) const
pure virtual

Get the mesh's bones. {Property}.

virtual tFVF GetFVF ( ) const
pure virtual

Get the FVF that matches this mesh's data the most closely. {Property}.

virtual void CopyVertexToFVFStream ( const cFVFStream aStream,
tU32  anDestIndex,
tU32  anMeshVertIndex,
const sMatrixf amtxWorld,
iBoundingVolume apBV,
tSceneMeshCopyToFVFStreamFlags  aFlags 
)
pure virtual

Copy a vertex to the specified FVF stream.

Remarks
This method is unsafe and will crash the application if used improperly. {NoAutomation}
virtual void CopyVerticesToFVFStream ( const cFVFStream aStream,
tU32  anDestIndex,
tU32  anMeshFirstVertex,
tU32  anMeshNumVertex,
const sMatrixf amtxWorld,
iBoundingVolume apBV,
tSceneMeshCopyToFVFStreamFlags  aFlags 
)
pure virtual

Copy all the vertices of the scene to specifeid FVF stream.

Remarks
This method is unsafe and will crash the application if used improperly. {NoAutomation}
virtual tBool CopySkinInfosToFVFStream ( const cFVFStream aStream,
tU32  anDestIndex,
const tU32CVec avBoneIndices 
)
pure virtual

Copy the skining infos of the vertices to the specified fvf stream.

Remarks
The destination stream must be able to hold the number of vertices in the mesh.
avBoneIndices must contain a mapping index from the mesh's bone index to the stream's bone indices, it must be the size of the number of bones.
The stream FVF must be able to hold at least one weight and palette indices. {NoAutomation}
virtual tBool TransformVertices ( const sMatrixf aMatrix)
pure virtual

Transform all the vertices by the given matrix.

virtual tBool ReverseFaces ( )
pure virtual

Reverse the faces.