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.
Standardkonstruktor für XMXDECN4
.
Standardkonstruktor für XMXDECN4 .
void XMXDECN4( const XMXDECN4 & unnamedParam1)
Ein Konstruktor für XMXDECN4 .
Ein Konstruktor für XMXDECN4.
XMXDECN4 & operator=( const XMXDECN4 & unnamedParam1)
void XMXDECN4( XMXDECN4 && unnamedParam1)
Ein Konstruktor für XMXDECN4 .
Ein Konstruktor für XMXDECN4.
XMXDECN4 & operator=( XMXDECN4 && unnamedParam1)
Weist die Daten der Vektorkomponente aus einer instance von XMXDECN4
der aktuellen instance von zuXMXDECN4
.
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.
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.
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
.
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.
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.
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 XMXDECN4
zugewiesen.
XMXDECN4
kann 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.
XMVECTOR
Instanzen, 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 |