Direct3DRMMeshInterpolator

インターポレータは、アクションを格納した後、中間値を自動計算して、オブジェクトにアクションを適用する方法を提供する。インターポレータを使用して、色を混合し、異なる位置間でオブジェクトを円滑に移動し、メッシュをモーフィングし、さらに、ほかのさまざまな変換も行うことができる。

Direct3DRMMeshオブジェクトは、Direct3DRMMeshInterpolatorオブジェクトにアタッチできる。インターポレータの詳細については、追加情報の「インターポレータ」を参照すること。

Direct3DRMMeshInterpolatorインターフェイスには、次のメソッドが含まれる。

オブジェクトのアタッチ AttachObject
DetachObject
GetAttachedObjects
SetGroupColor
SetGroupColorRGB
補間の実行 GetIndex
Interpolate
SetIndex
その他 Translate
頂点位置 SetVertices

さらに、Direct3DRMMeshInterpolatorは、Direct3DRMObjectインターフェイスから次のメソッドを継承する。

Direct3DRMMeshInterpolator.AttachObject

Direct3DRMMeshInterpolator

オブジェクトをインターポレータに接続する。

構文

object.AttachObject(mObject As Direct3DRMObject)

要素

object
Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
mObject
インターポレータにアタッチするDirect3DRMObjectオブジェクト。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

アタッチされるオブジェクトは、別のインターポレータでも、インターポレータがxInterpolator型となるタイプxのオブジェクトでも良い。たとえば、Direct3DRMMeshオブジェクトは、Direct3DRMMeshInterpolatorオブジェクトにアタッチできる。

Direct3DRMMeshInterpolator.DetachObject

Direct3DRMMeshInterpolator

インターポレータからオブジェクトのアタッチを解除する。

構文

object.DetachObject(mObject As Direct3DRMObject)

要素

object
Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
mObject
インターポレータからアタッチを外すDirect3DRMObjectオブジェクト。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

Direct3DRMMeshInterpolator.GetAttachedObjects

Direct3DRMMeshInterpolator

インターポレータに現在アタッチされているオブジェクトを取得する。

構文

object.GetAttachedObjects( ) As Direct3DRMObjectArray

要素

object
Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。

戻り値

Direct3DRMObjectArrayオブジェクトを返す。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

Direct3DRMMeshInterpolator.GetIndex

Direct3DRMMeshInterpolator

インターポレータの現在の内部インデックス(時間)を取得する。

構文

object.GetIndex( ) As Single

要素

object
Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。

戻り値

インターポレータの現在の内部インデックスを含む値を返す。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

インターポレータに格納されている各キーは、インデックス値を持つ。キーを(メソッドを使って)記録するとき、キーには、現在のインターポレータのインデックス値でスタンプが押される。キーのインデックス値は、スタンプを押された後、変わることはない。

Direct3DRMMeshInterpolator.Interpolate

Direct3DRMMeshInterpolator

インターポレータに格納されているキー間を補間して、一連のアクションを生成する。その後、アクションは、指定のオブジェクトに適用される。オブジェクトの指定がなければ、アクションは、現在アタッチされているオブジェクトに適用される。

構文

object.Interpolate(val As Single,
  mObject As Direct3DRMObject,
  options As CONST_D3DRMINTERPOLATIONFLAGS)

要素

object
Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
val
インターポレータの現在の内部インデックスを含む値。
mObject
Direct3DRMObjectオブジェクト。このオブジェクトは、インターポレータに格納されているすべてのプロパティに対する補間値を割り当てるオブジェクトを表す。このポインタはNOTHINGでも良い。その場合、すべてのアタッチされているオブジェクトのプロパティ値には、補間値がセットされる。
options
実行する補間の種類を制御するCONST_D3DRMINTERPOLATIONFLAGS列挙型の値の1つ。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

Direct3DRMMeshInterpolator.SetGroupColor

Direct3DRMMeshInterpolator

Direct3DRMMeshInterpolatorオブジェクトにカラーキーを追加する。

構文

object.SetGroupColor(id As Long,
  val As Long)

要素

object
Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
id
グループの識別子。この識別子はDirect3DRMMesh.AddGroupを使って生成されたものでなくてはならない。
val
グループの色。赤、緑、青の色要素だけでなく、アルファ要素も必ずセットする。そうしないと、オブジェクトが可視にならないことがある。色は4バイトのLongで表される。高バイトはアルファ要素であり、後続のバイトが赤、緑、青を定義する。より簡単に色を構築するにはDirectX7オブジェクトのCreateColorRGBAを使い、フルアルファを希望しているだけの場合はSetColorRGBを使う。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

Direct3DRMMeshInterpolator.SetGroupColorRGB

Direct3DRMMeshInterpolator

Direct3DRMMeshInterpolatorオブジェクトにグループRGBキーを追加する。

構文

object.SetGroupColorRGB(id As Long,
  r As Single,
  g As Single,
  b As Single)

要素

object
Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
id
グループの識別子。この識別子はDirect3DRMMesh.AddGroupを使って生成されたものでなくてはならない。
r, g, b
グループカラーの赤、緑、青の色要素。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

Direct3DRMMeshInterpolator.SetIndex

Direct3DRMMeshInterpolator

インターポレータの内部インデックス(時間)に指定の値をセットする。他のインターポレータがそのインターポレータにアタッチされていれば、このメソッドは、再帰的にそれらのインデックスを同じ値に同期させる。

構文

object.SetIndex(val As Single)

要素

object
Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
val
インターポレータの内部インデックスに対してセットされる時間。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

注意

インターポレータに格納されている各キーは、インデックス値を持つ。キーを(メソッドを使って)記録するとき、キーには、現在のインターポレータのインデックス値でスタンプが押される。キーのインデックス値は、スタンプを押された後、変わることはない。

Direct3DRMMeshInterpolator.SetVertices

Direct3DRMMeshInterpolator

Direct3DRMMeshInterpolatorオブジェクトに頂点位置キーを追加する。

構文

object.SetVertices(id As Long,
  idx As Long,
  count As Long,
  vertexArray() As D3DRMVERTEX)

要素

object
Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
id
グループの識別子。この識別子はDirect3DRMMesh.AddGroupメソッドを使って生成されたものでなくてはならない。
idx
修正するメッシュグループの最初の頂点のインデックス。
count
セットする連続頂点の数。vertexArray配列は、少なくともcount数の要素を格納しなければならない。
vertexArray
設定する頂点位置を示すD3DRMVERTEX型の配列。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。

Direct3DRMMeshInterpolator.Translate

Direct3DRMMeshInterpolator

Direct3DRMMeshInterpolatorオブジェクト中の頂点の位置に、指定されたオフセットを追加する。

構文

object.Translate(tx As Single,
  ty As Single,
  tz As Single)

要素

object
Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
tx, ty, tz
各頂点位置のx座標、y座標、z座標に追加されるオフセット。

エラー値

エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。


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