IDirect3DRMAnimationSet2

アプリケーションは、Direct3DRMAnimationオブジェクトをグループ化するためにIDirect3DRMAnimationSet2インターフェイスのメソッドを使用することができる。このインターフェイスによって複雑なアニメーションの流れを再生することが簡単になる。

Direct3DRMAnimationSetオブジェクトによって、Direct3DRMAnimationオブジェクトをグループにまとめることができる。これで、アニメーションセット中のすべてのアニメーションが同じ時間パラメータを共有し、複雑に分割されたアニメーションの流れを簡単に再生できるようになる。アプリケーションは、IDirect3DRMAnimationSet2::AddAnimationメソッドを使用してアニメーションをアニメーションセットに追加し、IDirect3DRMAnimationSet2::DeleteAnimationメソッドを使用してそれを削除できる。アニメーションセットは、IDirect3DRMAnimationSet2::SetTimeメソッドを呼び出すことで操作する。

Microsoft DirectX version 6.0は、IDirect3DRMAnimationSet2インターフェイスを導入している。IDirect3DRMAnimationSet2は、構成アニメーションの取り出しを可能にするGetAnimationsメソッドを追加することで、それが置換する旧のIDirect3DRMAnimationSetインターフェイスを拡張する。Direct3D保持モードインターフェイスの履歴については、「インターフェイスの変更点」を参照すること。

IDirect3DRMAnimationSet2インターフェイスのメソッドは、以下のグループにまとめることができる。

追加、削除、取得、ロード AddAnimation
DeleteAnimation
GetAnimations
Load
時間 SetTime

すべてのCOMインターフェイスと同様、IDirect3DRMAnimationSet2インターフェイスはIUnknownインターフェイスメソッドを継承する。IUnknownインターフェイスは、以下の3つのメソッドをサポートする。
AddRef
QueryInterface
Release

さらに、IDirect3DRMAnimationSet2インターフェイスは、IDirect3DRMObjectインターフェイスから次のメソッドを継承する。
AddDestroyCallback
Clone
DeleteDestroyCallback
GetAppData
GetClassName
GetName
SetAppData
SetName

Direct3DRMAnimationSetオブジェクトは、IDirect3DRM3::CreateAnimationSetの呼び出しによって取得できる。

IDirect3DRMAnimationSet2::AddAnimation

IDirect3DRMAnimationSet2

アニメーションをアニメーションセットに追加する。

構文

HRESULT AddAnimation(
  LPDIRECT3DRMANIMATION2 lpD3DRMAnimation
  );

パラメータ

lpD3DRMAnimation
アニメーションセットに追加するDirect3DRMAnimationオブジェクト。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。可能な戻り値のリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMAnimationSet2::DeleteAnimation

IDirect3DRMAnimationSet2

アニメーションをアニメーションセットから削除する。

構文

HRESULT DeleteAnimation(
  LPDIRECT3DRMANIMATION2 lpD3DRMAnimation
  );

パラメータ

lpD3DRMAnimation
アニメーションセットから削除されるDirect3DRMAnimationオブジェクト。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。可能な戻り値のリストについては、「Direct3D保持モードの戻り値」を参照すること。

IDirect3DRMAnimationSet2::GetAnimations

IDirect3DRMAnimationSet2

アニメーションセット中のアニメーションを含む配列を取り出す。

構文

HRESULT GetAnimations
(LPDIRECT3DRMANIMATIONARRAY *lplpArray);

パラメータ

lplpArray
対応するDirect3DRMAnimationArrayオブジェクトへのポインタを受け取る配列。

戻り値

次の値のうち1つを返す。
 
DDERR_INVALIDOBJECT
DDERR_INVALIDPARAMS
DD_OK

注意

このメソッドは、DirectX version 6.0とともに導入された。

IDirect3DRMAnimationSet2::Load

IDirect3DRMAnimationSet2

アニメーションセットをロードする。

構文

HRESULT Load(
  LPVOID lpvObjSource,
  LPVOID lpvObjID,
  D3DRMLOADOPTIONS d3drmLOFlags,
  D3DRMLOADTEXTURE3CALLBACK d3drmLoadTextureProc,
  LPVOID lpArgLTP,
  LPDIRECT3DRMFRAME3 lpParentFrame
  );

パラメータ

lpvObjSource
オブジェクトがロードされるソースへのポインタ。d3drmLOFlagsパラメータが示すソースフラグによって、ファイル、リソース、メモリブロック、またはストリームを指定する。
lpvObjID
ロードするオブジェクトの名前または位置へのポインタ。このパラメータは、d3drmLOFlagsパラメータが示す識別子フラグによって解釈される。D3DRMLOAD_BYPOSITIONフラグを指定した場合、このパラメータは、ファイルの中のオブジェクトの順序を示すDWORD値へのポインタである。このパラメータにはNULLを指定することもできる。
d3drmLOFlags
ロードオプションを示すD3DRMLOADOPTIONS型の値。
d3drmLoadTextureProc
D3DRMLOADTEXTURE3CALLBACKコールバック関数。これは、特別なフォーマットを必要とするオブジェクトが用いるテクスチャを読み出すときに呼び出される。このパラメータにはNULLを指定することができる。
lpArgLTP
D3DRMLOADTEXTURE3CALLBACKコールバック関数に渡されるアプリケーション定義のデータ。
lpParentFrame
親Direct3DRMFrameオブジェクトのアドレス。この引数は、アニメーションセットのロードだけに影響する。xファイルからロードされたアニメーションが、xファイル中の親のないフレームを参照するときは、その親には、lpParentFramがセットされる。ただし、xファイル中の任意のフレームをロードするように、Loadを使った場合には、lpParentFrameは、親のないxファイル中のフレームに対する親フレームとして使用されることはない。すなわち、lpParentFrameは、アニメーションセットをロードしたときに限り使用される。lpParentFrameの値はNULLにすることができる。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。可能な戻り値のリストについては、「Direct3D保持モードの戻り値」を参照すること。

注意

デフォルトでは、このメソッドはlpvObjSourceパラメータで指定されるファイルの最初のアニメーションセットをロードする。デフォルトでは、パースペクティブ補正がオンである。

IDirect3DRMAnimationSet2::SetTime

IDirect3DRMAnimationSet2

アニメーションの現在の時間を設定する。

構文

HRESULT SetTime(
  D3DVALUE rvTime
  );

パラメータ

rvTime
新しい時間。

戻り値

成功すればD3DRM_OK、失敗すればエラーを返す。可能な戻り値のリストについては、「Direct3D保持モードの戻り値」を参照すること。


トップに戻る トップに戻る
© 1999 Microsoft and/or its suppliers. All rights reserved. Terms of Use.