Springhead
An open source physics engine for virtual reality, haptics and motion generation.
クラス GRAnimationMesh

キャラクタアニメーション用メッシュ

#include <GRAnimationMesh.h>

GRAnimationMeshに対する継承グラフ

構成

struct  DrawSubsetListener
 
struct  Frame
 
struct  MeshContainer
 

Public メソッド

 GRAnimationMesh (const GRAnimationMeshDesc &desc=GRAnimationMeshDesc())
 
virtual void SetMotion (const std::string &name)
 
virtual void SetTime (double time)
 
virtual void SetBlend (const std::vector< GRAnimationMeshBlendData > &data)
 
virtual Posed GetBoneKeyframePose (const std::string &name)
 
virtual void OverrideBoneOrientation (const std::string &name, const Quaterniond &orientation, double weight)
 
virtual void OverrideBonePose (const std::string &name, const Posed &pose, double weight, bool posRelative=false)
 
virtual void SetAllBonesOverrideWeight (double weight)
 
virtual void AddDrawSubsetListener (GRAnimationMeshDrawSubsetListenerFunc beforeFunc, GRAnimationMeshDrawSubsetListenerFunc afterFunc, void *ptr)
 
virtual void SetEffect (LPD3DXEFFECT effect, int matrixPaletteSize)
 
void Render (GRRenderIf *r)
 
void Rendered (GRRenderIf *r)
 
int NFrames ()
 
Affinef GetFrameCombinedTransform (int index)
 
void SetFrameCombinedTransform (int index, const Affinef &transform)
 
void SetDirectRenderMode ()
 
- Public メソッド inherited from GRVisual
 SPR_OBJECTDEF_ABST (GRVisual)
 
void Enable (bool on=true)
 
bool IsEnabled ()
 
virtual void SetMaterial (GRMaterialIf *)
 
virtual GRMaterialIfGetMaterial ()
 
- Public メソッド inherited from SceneObject
virtual void SetScene (SceneIf *s)
 
virtual SceneIfGetScene () const
 
virtual SceneObjectIfCloneObject ()
 
- Public メソッド inherited from NamedObject
 NamedObject (const NamedObject &n)
 
NamedObjectoperator= (const NamedObject &n)
 
virtual const char * GetName () const
 名前の取得
 
virtual void SetName (const char *n)
 名前の設定
 
virtual void SetNameManager (NameManagerIf *s)
 NameManagerを設定
 
virtual NameManagerIfGetNameManager () const
 NameManagerの取得
 
- Public メソッド inherited from Object
 SPR_OBJECTDEF (Object)
 クラス名の取得などの基本機能の実装
 
ObjectIfGetObjectIf ()
 
const ObjectIfGetObjectIf () const
 
virtual void Print (std::ostream &os) const
 デバッグ用の表示
 
virtual void PrintShort (std::ostream &os) const
 
virtual ObjectIfCreateObject (const IfInfo *info, const void *desc)
 オブジェクトの作成
 
virtual size_t NChildObject () const
 子オブジェクトの数
 
virtual ObjectIfGetChildObject (size_t pos)
 子オブジェクトの取得
 
virtual const ObjectIfGetChildObject (size_t pos) const
 
virtual bool AddChildObject (ObjectIf *o)
 子オブジェクトの追加
 
virtual bool DelChildObject (ObjectIf *o)
 子オブジェクトの削除
 
virtual void Clear ()
 すべての子オブジェクトの削除とプロパティのクリア
 
virtual void Loaded (UTLoadContext *)
 ファイルロード後に一度呼ばれる。ノードの設定に使う。 呼び出し順序に依存する処理がしたい場合は、UTLoadHandeler と UTLoadTask を使うと良い。 
 
virtual void Setup ()
 ノードの設定をするための関数
 
virtual bool GetDesc (void *desc) const
 デスクリプタの読み出し(コピー版)
 
virtual void SetDesc (const void *desc)
 デスクリプタの設定
 
virtual const void * GetDescAddress () const
 デスクリプタの読み出し(参照版)
 
virtual size_t GetDescSize () const
 デスクリプタのサイズ
 
virtual bool GetState (void *state) const
 状態の読み出し(コピー版)
 
virtual const void * GetStateAddress () const
 状態の読み出し(参照版)
 
virtual void GetStateR (char *&state)
 状態の再帰的な読み出し
 
virtual void SetState (const void *state)
 状態の設定
 
virtual void SetStateR (const char *&state)
 状態の再帰的な設定
 
virtual bool WriteStateR (std::ostream &fout)
 状態のファイルへの書き出し
 
virtual bool WriteState (std::string fileName)
 
virtual bool ReadStateR (std::istream &fin)
 状態の読み込み
 
virtual bool ReadState (std::string fileName)
 
virtual size_t GetStateSize () const
 状態のサイズ
 
virtual void ConstructState (void *m) const
 メモリブロックを状態型に初期化
 
virtual void DestructState (void *m) const
 状態型をメモリブロックに戻す
 
virtual void DumpObjectR (std::ostream &os, int level=0) const
 メモリデバッグ用。単純にツリーのオブジェクトをファイルにダンプする。
 

Protected メソッド

bool LoadMesh ()
 
void InitFrame (Frame *frame)
 
void CreateBlendedMesh (MeshContainer *meshContainer)
 
void SetBoneMatrices (MeshContainer *meshContainer)
 
void CreateIndexedBlendedMeshes (Frame *frame, int matrixPaletteSize)
 
void CreateIndexedBlendedMesh (MeshContainer *meshContainer, int matrixPaletteSize)
 
void UpdateFrame (Frame *frame, const D3DXMATRIX &parentMatrix)
 
void DrawFrame (const Frame *frame)
 
void DrawSkinnedMeshContainer (MeshContainer *meshContainer)
 
void DrawNormalMeshContainer (MeshContainer *meshContainer, const Frame *frame)
 
void OverrideFrame (Frame *frame, double weight)
 
- Protected メソッド inherited from NamedObject
virtual void PrintHeader (std::ostream &os, bool bClose) const
 開き括弧
 
- Protected メソッド inherited from Object
virtual void PrintChildren (std::ostream &os) const
 子オブジェクトをPrint
 
virtual void PrintFooter (std::ostream &os) const
 閉じ括弧
 
virtual void BeforeGetDesc () const
 GetDesc()の前に呼ばれる
 
virtual void AfterSetDesc ()
 SetDesc()のあとに呼ばれる
 

Protected 変数

FramerootFrame
 
CComPtr< ID3DXAnimationController > controller
 
bool loaded
 
std::vector< DrawSubsetListenerdrawSubsetListeners
 
std::vector< Frame * > frames
 
bool directRenderMode
 
CComPtr< ID3DXEffect > effect
 
D3DXHANDLE fxpWorld
 
D3DXHANDLE fxpMaxVertexInfl
 
D3DXHANDLE fxpBoneMatrices
 
D3DXHANDLE fxpBoneQuaternionsReal
 
D3DXHANDLE fxpBoneQuaternionsDual
 
D3DXHANDLE fxpDiffuseColor
 
D3DXHANDLE fxpEmissiveColor
 
D3DXHANDLE fxpTexture
 
D3DXHANDLE fxpIsTextured
 
- Protected 変数 inherited from NamedObject
UTString name
 名前
 
NameManagernameManager
 名前の検索や重複管理をするもの.SceneやSDKなど.
 

Additional Inherited Members

- Public 変数 inherited from GRVisual
bool enabled
 
- Public 変数 inherited from GRAnimationMeshDesc
std::string filename
 読み込むファイル名(.x)
 
- Static Protected メソッド inherited from Object
static void ConstructState (ObjectIf *o, char *&s)
 sをoのStateとして初期化する.
 
static void DestructState (ObjectIf *o, char *&s)
 sをoのStateからメモリブロックに戻す.
 

このクラスの説明は次のファイルから生成されました: