XMUDECN4-Struktur (directxpackedvector.h)

Ein 4D-Vektor zum Speichern nicht signierter, normalisierter ganzzahliger Werte als 10-Bit-x-, y- und z-Komponenten ohne Vorzeichen und eine 2-Bit-w-Komponente ohne Vorzeichen.

Eine Liste mit weiteren Funktionen wie Konstruktoren und Operatoren, die bei XMUDECN4 der Programmierung in C++ verfügbar sind, finden Sie unter XMUDECN4 Extensions.

 

Syntax

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;
};

Member

x

Ganzzahlwert ohne Vorzeichen im Bereich [0, 1023], der die x-Koordinate des Vektors beschreibt.

y

Ganzzahlwert ohne Vorzeichen im Bereich [0, 1023], der die y-Koordinate des Vektors beschreibt.

z

Ganzzahlwert ohne Vorzeichen im Bereich [0, 1023], der die Z-Koordinate des Vektors beschreibt.

w

Ganzzahlwert ohne Vorzeichen im Bereich [0, 3], der die w-Koordinate des Vektors beschreibt.

v

32-Bit-Ganzzahl ohne Vorzeichen, die den 4D-Vektor darstellt.

void XMUDECN4()

Standardkonstruktor für XMUDECN4.

Standardkonstruktor für XMUDECN4 .

Hinweis Dieser Konstruktor ist nur unter C++ verfügbar.
 

void XMUDECN4( const XMUDECN4 & unnamedParam1)

Ein Konstruktor für XMUDECN4.

Ein Konstruktor für XMUDECN4 .

Hinweis Dieser Konstruktor ist nur unter C++ verfügbar.

XMUDECN4 & operator=( const XMUDECN4 & unnamedParam1)

void XMUDECN4( XMUDECN4 && unnamedParam1)

Ein Konstruktor für XMUDECN4.

Ein Konstruktor für XMUDECN4 .

Hinweis Dieser Konstruktor ist nur unter C++ verfügbar.

XMUDECN4 & operator=( XMUDECN4 && unnamedParam1)

Weist die Daten der Vektorkomponente aus einer instance von XMUDECN4 der aktuellen instance von zuXMUDECN4.

Dieser Operator weist die Daten der Vektorkomponente aus einem instance XMUDECN4 der aktuellen instance von XMUDECN4zu.

Hinweis Dieser Operator ist nur unter C++ verfügbar.

void XMUDECN4( uint32_t Packed) noexcept

Initialisiert eine neue instance von XMUDECN4 aus einer uint32_t Variablen, die Komponentendaten in einem gepackten Format enthält.

Dieser Konstruktor initialisiert eine neue instance von XMUDECN4 aus einer uint32_t Variablen, die Komponentendaten in einem gepackten Format enthält.

Hinweis Dieser Konstruktor ist nur unter C++ verfügbar.
 

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

Dieser Konstruktor initialisiert eine neue instance von XMUDECN4 aus vier normalisierten float Argumenten.

Hinweis Dieser Konstruktor ist nur unter C++ verfügbar.
 

void XMUDECN4( const float *pArray) noexcept

Initialisiert eine neue instance von XMUDECN4 aus einem Argument mit einem Array mit vier Elementenfloat.

Dieser Konstruktor initialisiert eine neue instance von XMUDECN4 aus einem Arrayargument mit vier Elementenfloat.

Hinweis Dieser Konstruktor ist nur unter C++ verfügbar.

void-Operator uint32_t() noexcept

Gibt eine instance zurückuint32_t, die die Komponenten der XMUDECN4 instance in einem gepackten Format enthält.

Gibt eine instance zurückuint32_t, die die Komponenten der XMUDECN4 instance in einem gepackten Format enthält.

Hinweis Dieser Operator ist nur unter C++ verfügbar.
 

XMUDECN4 & operator=( uint32_t Packed) noexcept

Weist die in einer instance von uint32_t gepackten Daten der Vektorkomponente dem aktuellen instance von zuXMUDECN4.

Dieser Operator weist die in einer instance von uint32_t gepackten Daten der Vektorkomponente dem aktuellen instance von XMUDECN4 zu.

Hinweis Dieser Operator ist nur unter C++ verfügbar.
 

Hinweise

Diese XMUDECN4 Konstruktoren, die Gleitkommaargumente verwenden, erfordern eine normalisierte Eingabe, die im Bereich von [0.-1.0] liegen muss. Während der Instanziierung werden die Eingaben, die die x-, y- und z-Komponenten angeben, mit 1023.0f multipliziert, und die w-Komponente wird mit 3,0f multipliziert. Die Ergebnisse werden gerundet und dann den entsprechenden Membern von XMUDECN4zugewiesen.

Sie können verwendenXMUDECN4, um Instanzen von XMVECTOR aus normalisierten Werten zu laden, indem Sie XMLoadUDecN4 verwenden, das die x-, y- und z-Komponenten durch 1023.0f dividiert, die w-Komponente durch 3.0f dividiert, das Ergebnis rundet und dann die Komponenten einem XMVECTOR instance zuweist.

XMVECTORInstanzen, die normalisierte Werte enthalten, können mithilfe von XMStoreUDecN4 gespeichert XMUDECN4 werden, wodurch die x-, y- und z-Komponenten mit 1023.0f multipliziert, die w-Komponente mit 3.0f multipliziert wird und das Ergebnis abgerundet wird, bevor die Werte den entsprechenden XMUDECN4 Membern zugewiesen werden.

Namespace: Verwenden von DirectX::P ackedVector

Plattformanforderungen

Microsoft Visual Studio 2010 oder Microsoft Visual Studio 2012 mit dem Windows SDK für Windows 8. Unterstützt für Win32-Desktop-Apps, Windows Store-Apps und Windows Phone 8-Apps.

Anforderungen

Anforderung Wert
Header directxpackedvector.h

Weitere Informationen

DirectXMath-Bibliotheksstrukturen

XMUDECN4-Erweiterungen