Shifts a vector left by a given number of 32-bit elements, filling the vacated elements with elements from a second vector.
XMVECTOR XMVectorShiftLeft(
XMVECTOR V1,
XMVECTOR V2,
uint32_t Elements
)
V1
Type: XMVECTOR
Vector to shift left.
V2
Type: XMVECTOR
Vector used to fill in the vacated components of V1 after it is shifted left.
Elements
Type: uint32_t
Number of 32-bit elements by which to shift V left. This parameter must be 0, 1, 2, or 3.
Type: XMVECTOR
Returns the shifted and filled in XMVECTOR.
The following code demonstrates how this function might be used.
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 );
The shifted vector (result) will be <20.0f, 30.0f, 40.0f, 50.0f>.
In the case of a constant shift value, it is more efficient to use the template form of XMVectorShiftLeft:
template<uint32_t Elements>
XMVECTOR XMVectorShiftLeft(FXMVECTOR V1, FXMVECTOR V2)
Example: XMVectorShiftLeft<1>( v1, v2 );
Header: Declared in directxmath.h.