Freigeben über


XMXDECN4-Struktur (directxpackedvector.h)

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

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

 

Syntax

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

Member

x

Ganzzahlwert mit Vorzeichen im Bereich [-511, 511], der die x-Koordinate des Vektors beschreibt.

y

Ganzzahlwert mit Vorzeichen im Bereich [-511, 511], der die y-Koordinate des Vektors beschreibt.

z

Ganzzahlwert mit Vorzeichen im Bereich [-511, 511], 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 XMXDECN4()

Standardkonstruktor für XMXDECN4.

Standardkonstruktor für XMXDECN4 .

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

void XMXDECN4( const XMXDECN4 & unnamedParam1)

Ein Konstruktor für XMXDECN4 .

Ein Konstruktor für XMXDECN4.

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

XMXDECN4 & operator=( const XMXDECN4 & unnamedParam1)

void XMXDECN4( XMXDECN4 && unnamedParam1)

Ein Konstruktor für XMXDECN4 .

Ein Konstruktor für XMXDECN4.

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

XMXDECN4 & operator=( XMXDECN4 && unnamedParam1)

Weist die Daten der Vektorkomponente aus einer instance von XMXDECN4 der aktuellen instance von zuXMXDECN4.

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

void XMXDECN4( uint32_t Packed)

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

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

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

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

Initialisiert eine neue instance von XMXDECN4 vier normalisierten float Argumenten.

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

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

void XMXDECN4( const float *pArray) noexcept

Initialisiert eine neue instance von XMXDECN4 aus einem Arrayargument mit vier Elementenfloat.

Dieser Konstruktor initialisiert eine neue instance von XMXDECN4 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 XMXDECN4 instance in einem gepackten Format enthält.

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

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

XMXDECN4 & operator=( uint32_t Packed) noexcept

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

Dieser Operator weist die in einer instance von uint32_t gepackten Vektorkomponentendaten der aktuellen instance von XMXDECN4 zu.

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

Hinweise

Diese XMXDECN4 Konstruktoren, die Gleitkommaargumente verwenden, erfordern eine normalisierte Eingabe, die für x-, y-, z-Komponenten und 0,0 für die w-Komponente im Bereich von [-1.0.-1.0] liegen muss. Während der Instanziierung werden die Eingaben, die die x-, y- und z-Komponenten angeben, mit 511.0f und die w-Komponente mit 3.0f multipliziert. Diese Ergebnisse werden gerundet und dann den entsprechenden Membern von XMXDECN4zugewiesen.

XMXDECN4kann verwendet werden, um Instanzen von XMVECTOR aus normalisierten Werten zu laden, indem XMLoadXDecN4 verwendet wird, wodurch die x-, y- und z-Komponenten durch 511,0f, die w-Komponente durch 3,0f dividiert, das Ergebnis abgerundet und die Komponenten dann einem XMVECTOR instance zugewiesen werden.

XMVECTORInstanzen, die normalisierte Werte enthalten, können mithilfe von XMStoreXDecN4 gespeichert XMXDECN4 werden, wodurch die x-, y-, und z-Komponenten mit 511,0f, die w-Komponente mit 3,0f multipliziert werden, wobei das Ergebnis abgerundet wird, bevor die Werte den entsprechenden XMXDECN4 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

   
Kopfzeile directxpackedvector.h

Weitere Informationen

DirectXMath-Bibliotheksstrukturen

XMXDECN4-Erweiterungen