XMStoreUNibble4-Funktion (directxpackedvector.h)
Speichert einen XMVECTOR in einem XMUNIBBLE4.
Syntax
void XM_CALLCONV XMStoreUNibble4(
[out] XMUNIBBLE4 *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
Der folgende Pseudocode veranschaulicht den Vorgang der Funktion.
XMVECTOR N;
static const XMVECTOR Max = {15.f, 15.f, 15.f, 15.f };
N = XMVectorClamp(V, XMVectorZero, Max);
N = XMVectorRound(N);
pDestination->x = (int8_t)N.v[0];
pDestination->y = (int8_t)N.v[1];
pDestination->z = (int8_t)N.v[2];
pDestination->w = (int8_t)N.v[3];
Beachten Sie, dass es sich nicht um normalisierte Werte handelt. Um in das RGBA 4/4/4/4/4-Format zu konvertieren, müssen Sie den Eingabevektor mit (15.f, 15.f, 15.f, 15.f)
skalieren.
Außerdem müssen Sie wahrscheinlich den Standardwert .x = RED, .y = GREEN, .z = BLUE, .w = .x- und .z-Wert des ALPHA-Farbvektors schwenken, da das GPU-Format BGR (nicht RGB) ist.
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) |