Freigeben über


XMVectorShiftLeft-Funktion (directxmath.h)

Verschiebt einen Vektor um eine bestimmte Anzahl von 32-Bit-Elementen nach links und füllt die frei werdenden Elemente mit Elementen aus einem zweiten Vektor.

Syntax

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

Parameter

[in] V1

Vektor, der nach links verschoben werden soll.

[in] V2

Vektor, der verwendet wird, um die frei werdenden Komponenten von V1 auszufüllen, nachdem er nach links verschoben wurde.

[in] Elements

Anzahl der 32-Bit-Elemente, um die V nach links verschoben werden soll. Dieser Parameter muss 0, 1, 2 oder 3 sein.

Rückgabewert

Gibt den verschobenen und ausgefüllten XMVECTOR-Wert zurück.

Hinweise

Der folgende Code veranschaulicht, wie diese Funktion verwendet werden kann.

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 );

Der verschobene Vektor (Ergebnis) ist <20.0f, 30.0f, 40.0f, 50.0f>.

Im Fall eines konstanten Shift-Werts ist es effizienter, das Vorlagenformular von XMVectorShiftLeft zu verwenden:


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

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

Plattformanforderungen

Microsoft Visual Studio 2010 oder Microsoft Visual Studio 2012 mit dem Windows SDK für Windows 8. Unterstützt für Win32-Desktop-Apps, Windows Store-Apps und Windows Phone 8-Apps.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile directxmath.h (DirectXMath.h einschließen)

Weitere Informationen

Komponentenweise Vektorfunktionen

XMVectorPermute

XMVectorRotateLeft

XMVectorRotateRight