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
要件
要件 | 値 |
---|---|
ヘッダー |
|
関連項目