XMVectorShiftLeft 函数 (directxmath.h)

将给定数量的 32 位元素左移向量,用第二个向量中的元素填充空出的元素。

语法

XMVECTOR XM_CALLCONV XMVectorShiftLeft(
  [in] FXMVECTOR V1,
  [in] FXMVECTOR V2,
  [in] uint32_t  Elements
) noexcept;

参数

[in] V1

向左移动的矢量。

[in] V2

向量,用于在 V1 向左移动后填充已空的组件。

[in] Elements

V 左移的 32 位元素的数目。 此参数必须为 0、1、2 或 3。

返回值

返回 XMVECTOR 中移位并填充的 。

注解

以下代码演示了如何使用此函数。

XMVECTOR v1 = XMVectorSet( 10.0f, 20.0f, 30.0f, 40.0f );
XMVECTOR v2 = XMVectorSet( 50.0f, 60.0f, 70.0f, 80.0f );
XMVECTOR result = XMVectorShiftLeft( v1, v2, 1 );

移位矢量 (结果) 将是 <20.0f、30.0f、40.0f、50.0f>。

对于常量移位值,使用 XMVectorShiftLeft 的模板形式会更有效:


template<uint32_t Elements>
    XMVECTOR XMVectorShiftLeft(FXMVECTOR V1, FXMVECTOR V2)

Example: XMVectorShiftLeft<1>( v1, v2 );
   

平台要求

具有 Windows SDK for Windows 8 的 Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012。 支持 Win32 桌面应用、Windows 应用商店应用和 Windows Phone 8 应用。

要求

要求
目标平台 Windows
标头 directxmath.h (包括 DirectXMath.h)

另请参阅

分量向量函数

XMVectorPermute

XMVectorRotateLeft

XMVectorRotateRight