Partager via


Fonction XMStoreShort4 (directxpackedvector.h)

Stocke un XMVECTOR dans un XMSHORT4.

Syntaxe

void XM_CALLCONV XMStoreShort4(
  [out] XMSHORT4  *pDestination,
  [in]  FXMVECTOR V
) noexcept;

Paramètres

[out] pDestination

Adresse à laquelle stocker les données.

[in] V

Vecteur contenant les données à stocker.

Valeur retournée

Aucun.

Notes

Cette fonction prend un vecteur, le serre dans la plage -32767.0f à 32767.0f, convertit les composants en un format entier signé et normalisé et écrit les résultats dans quatre valeurs entières courtes à l’adresse donnée. Le composant le plus significatif est écrit dans les deux premiers octets de l’adresse, le composant le plus significatif suivant est écrit dans les deux octets suivants de l’adresse, et ainsi de suite.

Le pseudocode suivant illustre le fonctionnement de la fonction.

static const XMVECTOR  Min = {-32767.0f, -32767.0f, -32767.0f, -32767.0f};
static const XMVECTOR  Max = {32767.0f, 32767.0f, 32767.0f, 32767.0f};
XMVECTOR               N;
N = XMVectorClamp(V, Min, Max);
N = XMVectorRound(N);

pDestination->x = (int16_t)N.x; // 2 bytes to address pDestination
pDestination->y = (int16_t)N.y; // 2 bytes to address (uint8_t*)pDestination + 2
pDestination->z = (int16_t)N.z; // 2 bytes to address (uint8_t*)pDestination + 4
pDestination->w = (int16_t)N.w; // 2 bytes to address (uint8_t*)pDestination + 6

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 Windows Phone 8 applications.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête directxpackedvector.h (inclure DirectXPackedVector.h)

Voir aussi

Fonctions de magasin de vecteurs de la bibliothèque DirectXMath