Partager via


Fonction XMStoreShort2 (directxpackedvector.h)

Stocke un XMVECTOR dans un XMSHORT2.

Syntaxe

void XM_CALLCONV XMStoreShort2(
  [out] XMSHORT2  *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 deux composants les plus significatifs en un format entier signé et normalisé et écrit les résultats dans deux valeurs entières courtes à l’adresse donnée. Le composant le plus significatif est écrit dans les deux premiers octets de l’adresse et le composant le plus significatif suivant est écrit dans les deux octets suivants de l’adresse.

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

Configuration requise pour la plateforme

Microsoft Visual Studio 2010 ou Microsoft Visual Studio 2012 avec le Kit de développement logiciel (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