XMDECN4::XMDECN4(constfloat*)-Funktion (directxpackedvector.h)
Initialisiert eine neue instance von XMDECN4 aus einem Argument mit vier Elementenarrayfloat
.
Dieser Konstruktor initialisiert eine neue instance von XMDECN4 aus einem Argument mit vier Elementarraysfloat
.
Hinweis Dieser Konstruktor ist nur unter C++ verfügbar.
Syntax
void XMDECN4(
const float *pArray
) noexcept;
Parameter
pArray
Vier Element-Gleitkommaarray mit den Werten, die zum Initialisieren der vier Komponenten eines neuen instance von XMDECN4 verwendet werden.
Rückgabewert
Keine
Bemerkungen
Arrayelemente werden den Vektorkomponenten einer neuen instance von XMDECN4 wie folgt zugeordnet:
Vektorkomponente | Array-Element | Range | BESCHREIBUNG |
---|---|---|---|
x | pArray[0] | -1.0, 1.0 | Während der Instanziierung wird pArray[0] zwischen -1 und 1 geklemmt, mit 511.0f multipliziert und x zugewiesen. |
j | pArray[1] | -1.0, 1.0 | Während der Instanziierung wird pArray[1] zwischen -1 und 1 eingespannt, mit 511.0f multipliziert und dann y zugewiesen. |
z | pArray[2] | -1.0, 1.0 | Während der Instanziierung wird pArray[2] zwischen -1 und 1 geklemmt, mit 511.0f multipliziert und dann z zugewiesen. |
w | pArray[3] | -1.0, 1.0 | Während der Instanziierung wird pArray[3] zwischen -1 und 1 eingeklemmt und dann w zugewiesen. |
XMDECN4 instance;
_x1=min( max( pArray[0], -1.0 ), 1.0 );
_y1=min( max( pArray[1], -1.0 ), 1.0 );
_z1=min( max( pArray[2], -1.0 ), 1.0 );
_w1=min( max( pArray[3], -1.0 ), 1.0 );
_x1 = round( _x1 * 511.0f);
_y1 = round( _y1 * 511.0f);
_z1 = round( _z1 * 511.0f);
instance.v = ( (int32_t)_w1 << 30) |
(((int32_t)_z1 & 0x3FF) << 20) |
(((int32_t)_y1 & 0x3FF) << 10) |
(((int32_t)_x1 & 0x3FF));
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | directxpackedvector.h |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für