Partager via


XMUDECN4 structure (directxpackedvector.h)

Vecteur 4D pour stocker des valeurs entières normalisées non signées sous forme de composants x, y et z non signés 10 bits, et un composant w non signé 2 bits.

Pour obtenir la liste des fonctionnalités supplémentaires, telles que les constructeurs et les opérateurs disponibles XMUDECN4 lors de la programmation en C++, consultez extensions XMUDECN4.

 

Syntaxe

struct XMUDECN4 {
  union {
    struct {
      uint32_t x : 10;
      uint32_t y : 10;
      uint32_t z : 10;
      uint32_t w : 2;
    };
             uint32_t v;
  };
  void       XMUDECN4();
  void       XMUDECN4(
    const XMUDECN4 & unnamedParam1
  );
  XMUDECN4 & operator=(
    const XMUDECN4 & unnamedParam1
  );
  void       XMUDECN4(
    XMUDECN4 && unnamedParam1
  );
  XMUDECN4 & operator=(
    XMUDECN4 && unnamedParam1
  );
  void       XMUDECN4(
    uint32_t Packed
  ) noexcept;
  void       XMUDECN4(
    float _x,
    float _y,
    float _z,
    float _w
  ) noexcept;
  void       XMUDECN4(
    const float *pArray
  ) noexcept;
  void       operator uint32_t() noexcept;
  XMUDECN4 & operator=(
    uint32_t Packed
  ) noexcept;
};

Membres

x

Valeur entière non signée dans la plage [0, 1023] décrivant la coordonnée x du vecteur.

y

Valeur entière non signée dans la plage [0, 1023] décrivant la coordonnée y du vecteur.

z

Valeur entière non signée dans la plage [0, 1023] décrivant la coordonnée z du vecteur.

w

Valeur entière non signée dans la plage [0, 3] décrivant la coordonnée w du vecteur.

v

Entier 32 bits non signé représentant le vecteur 4D.

void XMUDECN4()

Constructeur par défaut pour XMUDECN4.

Constructeur par défaut pour XMUDECN4 .

Note Ce constructeur n’est disponible que sous C++.
 

void XMUDECN4( const XMUDECN4 & unnamedParam1)

Constructeur pour XMUDECN4.

Constructeur pour XMUDECN4 .

Note Ce constructeur n’est disponible que sous C++.

XMUDECN4 & operator=( const XMUDECN4 & unnamedParam1)

void XMUDECN4( XMUDECN4 && unnamedParam1)

Constructeur pour XMUDECN4.

Constructeur pour XMUDECN4 .

Note Ce constructeur n’est disponible que sous C++.

XMUDECN4 & operator=( XMUDECN4 && unnamedParam1)

Affecte les données du composant vectoriel d’un instance de XMUDECN4 à la instance actuelle de XMUDECN4.

Cet opérateur affecte les données de composant vectoriel d’un instance de XMUDECN4 à la instance actuelle de XMUDECN4.

Note Cet opérateur n’est disponible que sous C++.

void XMUDECN4( uint32_t Packed) noexcept

Initialise une nouvelle instance de à partir d’une XMUDECN4uint32_t variable contenant des données de composant dans un format packed.

Ce constructeur initialise une nouvelle instance de XMUDECN4 à partir d’une uint32_t variable contenant des données de composant dans un format packé.

Note Ce constructeur n’est disponible que sous C++.
 

void XMUDECN4( float _x, float _y, float _z, float _w) noexcept

Ce constructeur initialise une nouvelle instance de XMUDECN4 à partir de quatre arguments normalisésfloat.

Note Ce constructeur n’est disponible que sous C++.
 

void XMUDECN4( const float *pArray) noexcept

Initialise une nouvelle instance de XMUDECN4 à partir d’un argument de tableau à quatre élémentsfloat.

Ce constructeur initialise une nouvelle instance de XMUDECN4 à partir d’un argument de tableau à quatre élémentsfloat.

Note Ce constructeur n’est disponible que sous C++.

void, opérateur uint32_t() noexcept

Retourne une instance de uint32_t contenir les composants du XMUDECN4 instance dans un format compressé.

Retourne une instance de uint32_t contenir les composants du instance XMUDECN4 dans un format compressé.

Note Cet opérateur n’est disponible que sous C++.
 

XMUDECN4 & operator=( uint32_t Packed) noexcept

Affecte les données du composant vectoriel packées dans un instance de uint32_t à la instance actuelle de XMUDECN4.

Cet opérateur affecte les données du composant vectoriel emballées dans un instance de uint32_t à la instance actuelle de XMUDECN4.

Note Cet opérateur n’est disponible que sous C++.
 

Remarques

Les XMUDECN4 constructeurs qui utilisent des arguments à virgule flottante nécessitent une entrée normalisée, qui doit se trouver dans la plage de [0.-1.0]. Pendant l’instanciation, les entrées spécifiant les composants x, y et z sont multipliées par 1023,0f, et le composant w est multiplié par 3,0f. Les résultats sont arrondis, puis attribués aux membres appropriés de XMUDECN4.

Vous pouvez utiliser XMUDECN4 pour charger des instances de XMVECTOR à partir de valeurs normalisées à l’aide de XMLoadUDecN4, qui divise les composants x-, y-et z par 1023.0f, divise le composant w par 3.0f, arrondit le résultat, puis affecte les composants à un XMVECTOR instance.

XMVECTOR Les instances contenant des valeurs normalisées peuvent être stockées dans XMUDECN4 à l’aide de XMStoreUDecN4, qui multiplie les composants x, y et z par 1023,0f, multiplie le composant w par 3,0f et arrondit le résultat avant d’affecter les valeurs aux membres appropriés XMUDECN4 .

Noms: Utiliser DirectX ::P ackedVector

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.

Configuration requise

Condition requise Valeur
En-tête directxpackedvector.h

Voir aussi

Structures de bibliothèque DirectXMath

XMUDECN4 Extensions