Microsoft DirectX 8.0 (C++)

DICUSTOMFORCE

DIEFT_CUSTOMFORCE としてマークされているエフェクトのタイプ固有の情報を格納する。

この構造体は、カスタムまたはユーザー定義フォースを表す。

エフェクトの DICUSTOMFORCE 構造体へのポインタは、DIEFFECT 構造体の lpvTypeSpecificParams メンバに渡される。

typedef struct DICUSTOMFORCE { 
    DWORD  cChannels; 
    DWORD  dwSamplePeriod; 
    DWORD  cSamples; 
    LPLONG rglForceData; 
} DICUSTOMFORCE, *LPDICUSTOMFORCE; 
 
typedef const DICUSTOMFORCE *LPCDICUSTOMFORCE;

メンバ

cChannels
このフォースによって影響されるチャネル (軸) の数。

1 番目のチャネルが、エフェクトに関連付けられた 1 番目の軸に適用され、2 番目のチャネルが 2 番目の軸に適用されるというように続く。軸よりもチャネルの数が少なければ、余分な軸に対する関連付けは行われない。

チャネルが 1 つしか存在しなければ、エフェクトは、DIEFFECT 構造体の rglDirection メンバが指定する方向に回転する。複数のチャネルがあると、回転できない。

カスタム エフェクトの回転をサポートしていないデバイスもある。

dwSamplePeriod
マイクロ秒単位のサンプリング間隔。
cSamples
rglForceData 内のサンプルの合計数。cChannels の整数倍でなければならない。
rglForceData
カスタム フォースを表すフォース値の配列へのポインタ。複数のチャネルが指定されていれば、値は、順番に割り当てられる。たとえば、cChannels が 3 の場合には、配列の 1 番目の要素は 1 番目のチャネルに、2 番目の要素は 2 番目のチャネルに、3 番目の要素は 3 番目のチャネルにそれぞれ属する。

動作環境

  Windows NT/2000 : Windows 2000 以降に対する再配布可能ファイルとして提供。
  Windows 95/98 : Windows 95 以降に対する再配布可能ファイルとして提供。
  ヘッダー : dinput.h で宣言。