Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Beschreibt einen 3D-Vektor aus drei Gleitkommakomponenten mit 9-Bit-Mantissen, die jeweils den gleichen 5-Bit-Exponenten nutzen.
Eine Liste mit zusätzlichen Funktionen, z. B. Konstruktoren und Operatoren, die beim Programmieren in C++ verfügbar XMFLOAT3SE sind, finden Sie unter XMFLOAT3SE-Erweiterungen.
Syntax
struct XMFLOAT3SE {
union {
struct {
uint32_t xm : 9;
uint32_t ym : 9;
uint32_t zm : 9;
uint32_t e : 5;
};
uint32_t v;
};
void XMFLOAT3SE();
void XMFLOAT3SE(
const XMFLOAT3SE & unnamedParam1
);
XMFLOAT3SE & operator=(
const XMFLOAT3SE & unnamedParam1
);
void XMFLOAT3SE(
XMFLOAT3SE && unnamedParam1
);
XMFLOAT3SE & operator=(
XMFLOAT3SE && unnamedParam1
);
void XMFLOAT3SE(
uint32_t Packed
) noexcept;
void XMFLOAT3SE(
float _x,
float _y,
float _z
) noexcept;
void XMFLOAT3SE(
const float *pArray
) noexcept;
void operator uint32_t() noexcept;
XMFLOAT3SE & operator=(
uint32_t Packed
) noexcept;
};
Member
9 xm
Die 9-Bit-x-Komponente.
9 ym
Die 9-Bit-y-Komponente.
9 zm
Die 9-Bit-z-Komponente.
5 e
Der freigegebene 5-Bit-Exponent.
v
32-Bit-Ganzzahl ohne Vorzeichen, die den 3D-Vektor darstellt.
Standardkonstruktor für XMFLOAT3SE.
Standardkonstruktor für XMFLOAT3SE.
void XMFLOAT3SE( const XMFLOAT3SE & unnamedParam1)
Ein Konstruktor für XMFLOAT3SE.
Ein Konstruktor für XMFLOAT3SE.
XMFLOAT3SE & operator=( const XMFLOAT3SE & unnamedParam1)
void XMFLOAT3SE( XMFLOAT3SE && unbenannteParam1)
Ein Konstruktor für XMFLOAT3SE.
Ein Konstruktor für XMFLOAT3SE.
XMFLOAT3SE & operator=( XMFLOAT3SE && unnamedParam1)
void XMFLOAT3SE( uint32_t Verpackt) noexcept
Initialisiert eine neue instance von XMFLOAT3SE aus einer uint32_t Variablen, die Komponentendaten in einem gepackten Format enthält.
Dieser Konstruktor initialisiert eine neue instance von XMFLOAT3SE aus einer uint32_t Variablen, die Komponentendaten in einem gepackten Format enthält.
void XMFLOAT3SE( float _x, float _y, float _z) noexcept
Initialisiert eine neue instance von XMFLOAT3SE drei float Argumenten.
Dieser Konstruktor initialisiert eine neue instance von XMFLOAT3SE aus drei float Argumenten.
void XMFLOAT3SE( const float *pArray) noexcept
Initialisiert eine neue instance von XMFLOAT3SE aus einem Argument mit drei Elementarraysfloat.
Dieser Konstruktor initialisiert eine neue instance von XMFLOAT3SE aus einem aus einem Float-Array-Argument mit drei Elementen.
void-Operator uint32_t() noexcept
Gibt eine instance zurückuint32_t, die die Komponenten des XMFLOAT3SE instance in einem gepackten Format enthält.
Dieser Operator gibt eine instance zurückuint32_t, die die Komponenten der XMFLOAT3SE instance in einem gepackten Format enthält.
XMFLOAT3SE & operator=( uint32_t Packed) noexcept
Dieser Operator weist die in einer instance von uint32_t gepackten Daten der Vektorkomponente dem aktuellen instance von XMFLOAT3SE zu.
Hinweise
Die Werte der drei Komponenten einer instance von XMFLOAT3SE werden im v des instance im folgenden Format gespeichert: Das e-Element der XMFLOAT3SE Struktur - der Exponent, der von den Mantissen der Gleitkommawerte aller drei Komponenten XMFLOAT3SE von gemeinsam genutzt wird - wird in der höchsten Reihenfolge bits des Rückgabewerts und die Mantisse der x-Komponente in den am wenigsten signifikanten Bits gespeichert.
(E5Z9Y9X9): [31] EEEEEzzz zzzzzzyy yyyyyyyx xxxxxxxx [0]
Oder im Detail:
- Die Bits 0-8 von Packed sind die 9-Bit-Mantisse des Gleitkommawerts der x-Komponente: das xm-Element der aktuellen Struktur.
- Die Bits 9-17 von Packed sind die 9-Bit-Mantisse des Gleitkommawerts der y-Komponente: das ym-Element der aktuellen Struktur.
- Bits 18-26 von Packed sind die 9-Bit-Mantissa des Gleitkommawerts der z-Komponente: das zm-Element der aktuellen Struktur.
- Bits 27-31 of Packed ist der 5-Bit-Exponent, der mit den gespeicherten Mantissen (xm, ym, zm) verwendet wird, um die Größe jeder Komponente darzustellen: das e-Element der aktuellen Struktur.
XMFLOAT3SE Struktur gibt, sind alle Komponentenwerte positiv.
XMFLOAT3SEkann mithilfe von XMLoadFloat3SE in XMVECTOR-Instanzen geladen werden.
Instanzen von XMVECTOR können in einer instance von XMFLOAT3SE mit XMStoreFloat3SE gespeichert 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 |