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.
Standardkonstruktor für XMUDECN4
.
Standardkonstruktor für XMUDECN4 .
void XMUDECN4( const XMUDECN4 & unnamedParam1)
Ein Konstruktor für XMUDECN4
.
Ein Konstruktor für XMUDECN4 .
XMUDECN4 & operator=( const XMUDECN4 & unnamedParam1)
void XMUDECN4( XMUDECN4 && unnamedParam1)
Ein Konstruktor für XMUDECN4
.
Ein Konstruktor für XMUDECN4 .
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 XMUDECN4
zu.
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.
void XMUDECN4( float _x, float _y, float _z, float _w) noexcept
Dieser Konstruktor initialisiert eine neue instance von XMUDECN4 aus vier normalisierten float
Argumenten.
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
.
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.
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.
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 XMUDECN4
zugewiesen.
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.
XMVECTOR
Instanzen, 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 |