インターポレータは、アクションを格納した後、中間値を自動計算して、オブジェクトにアクションを適用する方法を提供する。インターポレータを使用して、色を混合し、異なる位置間でオブジェクトを円滑に移動し、メッシュをモーフィングし、さらに、ほかのさまざまな変換も行うことができる。
Direct3DRMMeshオブジェクトは、Direct3DRMMeshInterpolatorオブジェクトにアタッチできる。インターポレータの詳細については、追加情報の「インターポレータ」を参照すること。
Direct3DRMMeshInterpolatorインターフェイスには、次のメソッドが含まれる。
オブジェクトのアタッチ AttachObject DetachObject GetAttachedObjects 色 SetGroupColor SetGroupColorRGB 補間の実行 GetIndex Interpolate SetIndex その他 Translate 頂点位置 SetVertices
さらに、Direct3DRMMeshInterpolatorは、Direct3DRMObjectインターフェイスから次のメソッドを継承する。
オブジェクトをインターポレータに接続する。
構文
object.AttachObject(mObject As Direct3DRMObject)
要素
- object
- Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
- mObject
- インターポレータにアタッチするDirect3DRMObjectオブジェクト。
エラー値
エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。
注意
アタッチされるオブジェクトは、別のインターポレータでも、インターポレータがxInterpolator型となるタイプxのオブジェクトでも良い。たとえば、Direct3DRMMeshオブジェクトは、Direct3DRMMeshInterpolatorオブジェクトにアタッチできる。
インターポレータからオブジェクトのアタッチを解除する。
構文
object.DetachObject(mObject As Direct3DRMObject)
要素
- object
- Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
- mObject
- インターポレータからアタッチを外すDirect3DRMObjectオブジェクト。
エラー値
エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。
インターポレータに現在アタッチされているオブジェクトを取得する。
構文
object.GetAttachedObjects( ) As Direct3DRMObjectArray
要素
- object
- Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
戻り値
Direct3DRMObjectArrayオブジェクトを返す。
エラー値
エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。
インターポレータの現在の内部インデックス(時間)を取得する。
構文
object.GetIndex( ) As Single
要素
- object
- Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
戻り値
インターポレータの現在の内部インデックスを含む値を返す。
エラー値
エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。
注意
インターポレータに格納されている各キーは、インデックス値を持つ。キーを(メソッドを使って)記録するとき、キーには、現在のインターポレータのインデックス値でスタンプが押される。キーのインデックス値は、スタンプを押された後、変わることはない。
インターポレータに格納されているキー間を補間して、一連のアクションを生成する。その後、アクションは、指定のオブジェクトに適用される。オブジェクトの指定がなければ、アクションは、現在アタッチされているオブジェクトに適用される。
構文
object.Interpolate(val As Single, mObject As Direct3DRMObject, options As CONST_D3DRMINTERPOLATIONFLAGS)
要素
- object
- Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
- val
- インターポレータの現在の内部インデックスを含む値。
- mObject
- Direct3DRMObjectオブジェクト。このオブジェクトは、インターポレータに格納されているすべてのプロパティに対する補間値を割り当てるオブジェクトを表す。このポインタはNOTHINGでも良い。その場合、すべてのアタッチされているオブジェクトのプロパティ値には、補間値がセットされる。
- options
- 実行する補間の種類を制御するCONST_D3DRMINTERPOLATIONFLAGS列挙型の値の1つ。
エラー値
エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。
Direct3DRMMeshInterpolatorオブジェクトにカラーキーを追加する。
構文
object.SetGroupColor(id As Long, val As Long)
要素
- object
- Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
- id
- グループの識別子。この識別子はDirect3DRMMesh.AddGroupを使って生成されたものでなくてはならない。
- val
- グループの色。赤、緑、青の色要素だけでなく、アルファ要素も必ずセットする。そうしないと、オブジェクトが可視にならないことがある。色は4バイトのLongで表される。高バイトはアルファ要素であり、後続のバイトが赤、緑、青を定義する。より簡単に色を構築するにはDirectX7オブジェクトのCreateColorRGBAを使い、フルアルファを希望しているだけの場合はSetColorRGBを使う。
エラー値
エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。
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保持モードのエラー値」を参照すること。
インターポレータの内部インデックス(時間)に指定の値をセットする。他のインターポレータがそのインターポレータにアタッチされていれば、このメソッドは、再帰的にそれらのインデックスを同じ値に同期させる。
構文
object.SetIndex(val As Single)
要素
- object
- Direct3DRMMeshInterpolatorオブジェクトを表すオブジェクト式。
- val
- インターポレータの内部インデックスに対してセットされる時間。
エラー値
エラーのリストについては、「Direct3D保持モードのエラー値」を参照すること。
注意
インターポレータに格納されている各キーは、インデックス値を持つ。キーを(メソッドを使って)記録するとき、キーには、現在のインターポレータのインデックス値でスタンプが押される。キーのインデックス値は、スタンプを押された後、変わることはない。
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オブジェクト中の頂点の位置に、指定されたオフセットを追加する。
構文
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.