XMVectorPermute テンプレート
2 つのベクトルのコンポーネントを順列して、新しいベクターを作成します。
構文
template<uint32_t PermuteX, uint32_t PermuteY, uint32_t PermuteZ, uint32_t PermuteW> XMVECTOR XMVectorPermute(
[in] XMVECTOR V1,
[in] XMVECTOR V2
);
パラメーター
-
V1
-
[入力]最初のベクトル。
-
V2
-
[入力]2 番目のベクター。
戻り値
ソース ベクトルの組み合わせによって生じた順列ベクトルを返します。
注釈
すべての 4 つのインデックスが 1 つのベクトルのみを参照する場合 (つまり、すべて 0 から 3 の範囲、または 4 から 7 の範囲のすべて) の場合は、パフォーマンスを向上させるには、代わりに XMVectorSwizzle を使用します。
ライブラリでは、一部のプラットフォームでテンプレートの特殊化を使用してパフォーマンスを向上させる点に注意してください。 このような特殊なケースに対して可能なすべてのミラーケースが実装されているわけではありません。そのため、結果のベクターの X 要素が V2 パラメーターではなく V1 パラメーターから取得される順列を使用することをお勧めします。 たとえば、 を 使用 XMVectorPermute<0,1,4,5>(A,B);
することをお XMVectorPermute(4,5,0,1)(B,A);
好みです。
この関数は、Permute* 引数がテンプレート値である XMVectorPermute のテンプレート バージョンです。
permuteX、PermuteY、PermuteZ、PermuteW の入力値として使用するために、XM_PERMUTE_定数が用意されています。
注意
この XMVectorPermute
テンプレートは DirectXMath 用の新しいテンプレートであり、XNAMath 2.x では使用できません。
名前空間: DirectX を使用する
プラットフォームの要件
Microsoft Visual Studio 2010 または Microsoft Visual Studio 2012 と Windows SDK for Windows 8。 Win32 デスクトップ アプリ、Windows ストア アプリ、Windows Phone 8 アプリでサポートされます。
要件
要件 | 値 |
---|---|
ヘッダー |
|
こちらもご覧ください