Partager via


Fonction XMLoadDecN4 (directxpackedvector.h)

Charge un XMDECN4 dans un XMVECTOR.

Syntaxe

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

Paramètres

[in] pSource

Adresse de la structure XMDECN4 à charger.

Valeur retournée

Retourne un XMVECTOR chargé avec les données du paramètre pSource .

Notes

Le pseudocode suivant illustre le fonctionnement de la fonction .

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;

Configuration requise pour la plateforme

Microsoft Visual Studio 2010 ou Microsoft Visual Studio 2012 avec le SDK Windows pour Windows 8. Pris en charge pour les applications de bureau Win32, les applications du Windows Store et les applications Windows Phone 8.

Spécifications

   
Plateforme cible Windows
En-tête directxpackedvector.h (inclure DirectXMath.h)

Voir aussi

Fonctions de chargement de vecteurs de bibliothèque DirectXMath