XMU555::XMU555(constuint8_t*,bool)-Funktion (directxpackedvector.h)
Initialisiert eine neue instance von XMU555 aus einem Array mit drei Elementen int8_t
und einem bool
Argument.
Dieser Konstruktor initialisiert eine neue instance von XMU555 aus einem Drei-Elementarray int8_t
(unter Angabe von x-, y- und z-Komponenten) und einem <bool
Argument (angabe einer w-Komponente).
Syntax
void XMU555(
const uint8_t *pArray,
bool _w
) noexcept;
Parameter
pArray
Drei Elementzeichenarray mit den Werten, die zum Initialisieren der x-, y- und z-Komponenten eines neuen instance von XMU555 verwendet werden.
_w
Der Wert der w-Komponente der instance.
Rückgabewert
Keine
Bemerkungen
Arrayelemente und das argument _w werden den Vektorkomponenten einer neuen instance von XMU555 wie folgt zugeordnet:
XMU555-Member | Argument | Bereich |
---|---|---|
x | pArray[0] | 0, 31 |
Y | pArray[1] | 0, 31 |
z | pArray[2] | 0, 31 |
w | _W | 0, 1 |
Argumente für die Konstruktoren werden vor der Zuweisung an den entsprechenden Member von XMU555 in den zulässigen Bereich eingespannt.
Der folgende Pseudocode veranschaulicht die Operation dieses Konstruktors, der die Vereinigung der vier Komponenten des XMU555-Vektors mit einer instance von uint16_t in der Definition der -Struktur nutzt:
XMU555 instance;
_x1=min( max( pArray[0], 0 ), 31 );
_y1=min( max( pArray[1], 0 ), 31 );
_z1=min( max( pArray[2], 0 ), 31 );
_w1=min( max( _w, 0 ), 1 );
instance.v = (((uint16_t)_w1 ? 0x8000 : 0) |
(((uint16_t)_z1 & 0x1F) << 10) |
(((uint16_t)_y1 & 0x1F) << 5) |
(((uint16_t)_x1 & 0x1F)));
Anforderungen
Zielplattform | Windows |
Kopfzeile | directxpackedvector.h |