42 lines
1001 B
C++
42 lines
1001 B
C++
/*
|
|
SMorphedMesh.h
|
|
Dynamic-vertexed mesh for vertex changing
|
|
|
|
Created 2006/05, by JiYoung
|
|
*/
|
|
|
|
|
|
#ifndef __SMORPHEDMESH_H__
|
|
#define __SMORPHEDMESH_H__
|
|
|
|
#include "KSeqForm.h"
|
|
|
|
/// KSeqForm :: hierarchical mesh and animation holder
|
|
class MorphedModel : public KSeqForm {
|
|
public:
|
|
MorphedModel();
|
|
virtual ~MorphedModel();
|
|
|
|
virtual void init(KMeshPrimitive *source);
|
|
virtual void close();
|
|
|
|
/// Local transform matrix : in-between of world and primitive
|
|
const K3DMatrix * getLocalMatrix() const { return &matLocal; }
|
|
void setLocalMatrix(K3DMatrix *mat) { matLocal = *mat; }
|
|
|
|
|
|
//
|
|
// Inherits
|
|
//
|
|
virtual int Process( DWORD dwTime ); ///< Return value : KSeqForm::SEQTYPE_xxx constants, maybe (...
|
|
virtual void Render( KViewportObject *viewport, DWORD flag = RENDEREFX_NONE, const K3DMatrix * pAttachMat = NULL );
|
|
|
|
protected:
|
|
K3DMatrix m_matRoot;
|
|
K3DMatrix matLocal; ///< Local transform matrix
|
|
KMeshPrimitive *primitive; ///< MorphedPrimitive *primitive;
|
|
};
|
|
|
|
#endif // __SMORPHEDMESH_H__
|
|
|