Partager via


Fonction XMStoreUNibble4 (directxpackedvector.h)

Stocke un XMVECTOR dans un XMUNIBBLE4.

Syntaxe

void XM_CALLCONV XMStoreUNibble4(
  [out] XMUNIBBLE4 *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

Le pseudocode suivant illustre le fonctionnement de la fonction.


  XMVECTOR N;
  static const XMVECTOR  Max = {15.f, 15.f, 15.f, 15.f };

  N = XMVectorClamp(V, XMVectorZero, Max);
  N = XMVectorRound(N);

  pDestination->x = (int8_t)N.v[0];
  pDestination->y = (int8_t)N.v[1];
  pDestination->z = (int8_t)N.v[2];
  pDestination->w = (int8_t)N.v[3];


Notez qu’il ne s’agit pas de valeurs normalisées. Pour convertir au format RVBA 4/4/4/4, vous devez mettre à l’échelle le vecteur d’entrée par (15.f, 15.f, 15.f, 15.f). En outre, vous devrez probablement swizzle la valeur .x = RED, .y = GREEN, .z = BLUE, .w = ALPHA color vector les valeurs .x et .z, car le format GPU est BGR (et non RVB).

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