次の方法で共有


D3DXTRANSITION_TYPE列挙

メッシュ アニメーションの値間の遷移スタイルを定義します。

構文

typedef enum D3DXTRANSITION_TYPE { 
  D3DXTRANSITION_LINEAR         = 0x000,
  D3DXTRANSITION_EASEINEASEOUT  = 0x001,
  D3DXTRANSITION_FORCE_DWORD    = 0x7fffffff
} D3DXTRANSITION_TYPE, *LPD3DXTRANSITION_TYPE;

定数

D3DXTRANSITION_LINEAR

値間の線形遷移。

D3DXTRANSITION_EASEINEASEOUT

値間のスプラインの切り替えを簡単に、簡単にします。

D3DXTRANSITION_FORCE_DWORD

この列挙を強制的に 32 ビットのサイズにコンパイルします。 この値がないと、一部のコンパイラでは、この列挙を 32 ビット以外のサイズにコンパイルできます。 この値は使用されません。

解説

簡単から簡単に切り出すランプの計算は、次のように計算されます。

Q(t) = 2(x - y)t ² + 3(y - x)t² + x

ここで、ランプは次のプロパティを持つ関数 Q(t) です。

  • Q(t) は 3 次スプラインです。
  • Q(t) は、x と y の間の補間を t として 0 から 1 の範囲で補間します。
  • Q(t) は、t = 0 および t = 1 の場合は水平方向です。

数学的には、これは次のようになります。

Q(t) = At ² + Bt² + Ct + D (したがって、Q'(t) = 3At² + 2Bt + C) 2a) Q(0) = x 2b) Q(1) = y 3a) Q'(0) = 0 3b) Q'(1) = 0

A、B、C、D の解決:

D = x (2a から) C = 0 (3a から) 3A + 2B = 0 (3b から) A + B = y - x (2b および D = x から)

そのため、次のようになります。

A = 2(x - y)、B = 3(y - x)、C = 0、D = x

要件

要件
ヘッダー
D3dx9anim.h

関連項目

D3DX 列挙