共用方式為


XMVectorPermute 函式 (directxmath.h)

將兩個向量的元件依存,以建立新的向量。

語法

XMVECTOR XM_CALLCONV XMVectorPermute(
  [in] FXMVECTOR V1,
  [in] FXMVECTOR V2,
       uint32_t  PermuteX,
       uint32_t  PermuteY,
       uint32_t  PermuteZ,
       uint32_t  PermuteW
) noexcept;

參數

[in] V1

第一個向量。

[in] V2

第二個向量。

PermuteX

索引格式 0-7,指出應該從中複製新向量的 X 元件。

PermuteY

索引格式 0-7,指出應該從中複製新向量的 Y 元件。

PermuteZ

索引格式 0-7,指出應該從中複製新向量的 Z 元件。

PermuteW

索引格式 0-7,指出應該從中複製新向量的 W 元件。

傳回值

傳回結合來源向量所產生的變動向量。

備註

如果所有 4 個索引只參考單一向量 (,亦即它們全都在範圍 0-3 或範圍 4-7) 中,請改用 XMVectorSwizzle 來取得更好的效能。

提供XM_PERMUTE_常數做為 PermuteXPermuteY、PermuteZPermuteW 的輸入值。

對於常數 PermuteX/Y/Z/W 參數,使用 XMVectorPermute 的範本形式會更有效率:


template<uint32_t PermuteX, uint32_t PermuteY, uint32_t PermuteZ, uint32_t PermuteW>
    XMVECTOR XMVectorPermute(FXMVECTOR V1, FXMVECTOR V2)

Example: XMVectorPermute<XM_PERMUTE_0Z, XM_PERMUTE_1X, XM_PERMUTE_0W, XM_PERMUTE_1Y>( V1, V2 );
   
注意 這個版本的 XMVectorPermute 是 DirectXMath 的新功能。 XNAMath v2.x 連結庫使用 XMVectorPermuteControl、控制項 XMVECTOR 而非 4 個索引, XMVectorPermute並針對 XM_PERMUTE_x 常數使用不同的值。
 

平臺需求

Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 與 Windows SDK for Windows 8。 支援 Win32 傳統型應用程式、Windows 市集應用程式和 Windows Phone 8 個應用程式。

規格需求

需求
目標平台 Windows
標頭 directxmath.h (包含 DirectXMath.h)

另請參閱

元件向量函式

XMVectorSwizzle