Freigeben über


XMLoadDecN4-Funktion (directxpackedvector.h)

Lädt einen XMDECN4 in einen XMVECTOR.

Syntax

XMVECTOR XM_DEPRECATED XM_CALLCONV XMLoadDecN4(
  [in] const XMDECN4 *pSource
) noexcept;

Parameter

[in] pSource

Adresse der zu ladenden XMDECN4-Struktur .

Rückgabewert

Gibt einen XMVECTOR zurück, der mit den Daten aus dem pSource-Parameter geladen wird.

Hinweise

Der folgende Pseudocode veranschaulicht den Betrieb der Funktion.

XMVECTOR vectorOut;

uint32_t Element;
static const uint32_t SignExtend[] = {0x00000000, 0xFFFFFC00};
static const uint32_t SignExtendW[] = {0x00000000, 0xFFFFFFFC};

Element = pSource->v & 0x3FF;
vectorOut.x = (float)(int16_t)(Element | SignExtend[Element >> 9]) / 511.0f;
Element = (pSource->v >> 10) & 0x3FF;
vectorOut.y = (float)(int16_t)(Element | SignExtend[Element >> 9]) / 511.0f;
Element = (pSource->v >> 20) & 0x3FF;
vectorOut.z = (float)(int16_t)(Element | SignExtend[Element >> 9]) / 511.0f;
Element = pSource->v >> 30;
vectorOut.w = (float)(int16_t)(Element | SignExtendW[Element >> 1]);

return vectorOut;

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

   
Zielplattform Windows
Kopfzeile directxpackedvector.h (einschließlich DirectXMath.h)

Weitere Informationen

Vektorladefunktionen der DirectXMath-Bibliothek