XMStoreShort4-Funktion (directxpackedvector.h)

Speichert einen XMVECTOR in einem XMSHORT4.

Syntax

void XM_CALLCONV XMStoreShort4(
  [out] XMSHORT4  *pDestination,
  [in]  FXMVECTOR V
) noexcept;

Parameter

[out] pDestination

Adresse, an der die Daten gespeichert werden sollen.

[in] V

Vektor mit den zu speichernden Daten.

Rückgabewert

Keine.

Hinweise

Diese Funktion nimmt einen Vektor an, klemmt ihn in den Bereich -32767.0f bis 32767.0f, konvertiert die Komponenten in ein vorzeicheniertes, normalisiertes Ganzzahlformat und schreibt die Ergebnisse in vier kurze ganzzahlige Werte an der angegebenen Adresse aus. Die wichtigste Komponente wird in die ersten beiden Bytes der Adresse geschrieben, die nächstwertigste Komponente wird in die nächsten beiden Bytes der Adresse geschrieben usw.

Der folgende Pseudocode veranschaulicht den Vorgang der Funktion.

static const XMVECTOR  Min = {-32767.0f, -32767.0f, -32767.0f, -32767.0f};
static const XMVECTOR  Max = {32767.0f, 32767.0f, 32767.0f, 32767.0f};
XMVECTOR               N;
N = XMVectorClamp(V, Min, Max);
N = XMVectorRound(N);

pDestination->x = (int16_t)N.x; // 2 bytes to address pDestination
pDestination->y = (int16_t)N.y; // 2 bytes to address (uint8_t*)pDestination + 2
pDestination->z = (int16_t)N.z; // 2 bytes to address (uint8_t*)pDestination + 4
pDestination->w = (int16_t)N.w; // 2 bytes to address (uint8_t*)pDestination + 6

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

Anforderung Wert
Zielplattform Windows
Kopfzeile directxpackedvector.h (directXPackedVector.h einschließen)

Weitere Informationen

Vektorspeicherfunktionen der DirectXMath-Bibliothek