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.
Initialisiert eine neue instance von XMBYTEN4 vier float Argumenten.
Dieser Konstruktor initialisiert eine neue instance von XMBYTEN4 aus vier float Argumenten.
Syntax
void XMBYTEN4(
float _x,
float _y,
float _z,
float _w
) noexcept;
Parameter
_x
Ein normalisierter Wert für die x-Koordinate des Vektors.
Dieses Argument sollte zwischen -1,0 und 1,0 sein. Während der Instanziierung einer instance von XMBYTEN4wird sie mit 127.0f multipliziert und dann als x-Element der Struktur gespeichert.
_y
Ein normalisierter Wert für die y-Koordinate des Vektors, das y des neuen instance vonXMBYTEN4
Dieses Argument sollte zwischen -1,0 und 1,0 sein. Während der Instanziierung eines instance von XMBYTEN4wird es mit 127.0f multipliziert und dann als y-Element der Struktur gespeichert.
_z
Ein normalisierter Wert für die Z-Koordinate des Vektors, das z des neuen instance vonXMBYTEN4
Dieses Argument sollte zwischen -1,0 und 1,0 sein. Während der Instanziierung eines instance von XMBYTEN4wird es mit 127.0f multipliziert und dann als z-Element der Struktur gespeichert.
_w
Ein normalisierter Wert für die w-Koordinate des Vektors, das w des neuen instance vonXMBYTEN4
Dieses Argument sollte zwischen -1,0 und 1,0 sein. Während der Instanziierung einer instance von XMBYTEN4wird sie mit 127.0f multipliziert und dann als w-Element der Struktur gespeichert.
Rückgabewert
Keine
Bemerkungen
Die Größe jedes Arguments für den Konstruktor wird an den Bereich geklemmt, der von einer 8-Bit-Ganzzahl mit Vorzeichen unterstützt wird [-127.0, 127.0].
Der folgende Pseudocode veranschaulicht den Betrieb dieses Konstruktors, der die union der vier Komponenten des XMBYTEN4 Vektors mit einem instance von uint32_t in der Definition der Struktur nutzt:
XMBYTEN4 instance;
_x1=min( max( _x, -1.0 ), 1.0 );
_y1=min( max( _y, -1.0 ), 1.0 );
_z1=min( max( _z, -1.0 ), 1.0 );
_w1=min( max( _w, -1.0 ), 1.0 );
_x1 = round( _x1 * 127.0f);
_y1 = round( _y1 * 127.0f);
_z1 = round( _z1 * 127.0f);
_w1 = round( _w1 * 127.0f);
instance.x = (int8_t)_x1;
instance.y = (int8_t)_y1;
instance.z = (int8_t)_z1;
instance.w = (int8_t)_w1;
Anforderungen
| Anforderung | Wert |
|---|---|
| Zielplattform | Windows |
| Kopfzeile | directxpackedvector.h |
Weitere Informationen
Referenz