Funzione XMStoreColor (directxpackedvector.h)
Archivia un XMVECTOR in un XMCOLOR.
Sintassi
void XM_CALLCONV XMStoreColor(
[out] XMCOLOR *pDestination,
[in] FXMVECTOR V
) noexcept;
Parametri
[out] pDestination
Indirizzo in cui archiviare i dati.
[in] V
Vettore contenente i dati da archiviare. X contiene il canale colore Rosso, Y contiene il canale Verde, Z il Blu e W il canale Alfa.
Valore restituito
No.
Osservazioni
La funzione accetta un vettore, lo blocca nell'intervallo 0.0f a 1.0f, converte i componenti in un formato intero senza segno, normalizzato, inserisce i componenti in un intero a 32 bit e scrive il risultato all'indirizzo specificato. Il componente più significativo viene scritto nella seconda parte più significativa otto bit dell'intero e così via.
Il codice pseudocodice seguente illustra l'operazione della funzione.
XMVector N;
N = saturate(V);
N = scale(N, 255.0f);
N = round(N);
pDestination->c = ((uint32_t)N.w << 24) |
((uint32_t)N.x << 16) |
((uint32_t)N.y << 8) |
((uint32_t)N.z);
Per Direct3D 10.x e Direct3D 11, questo corrisponde all'ordine dei componenti per le funzioni che accettano un parametro ColorRGBA[4] float.
XMVECTOR Yellow = XMVectorSet( 1.0f, 1.0f, 0.0f, 1.0f );
XMFLOAT4 clrf;
XMStoreFloat4( &clrf, Yellow );
pDeviceContext->ClearRenderTargetView( pRTV, (const float*)clrf );
Requisiti della piattaforma
Microsoft Visual Studio 2010 o Microsoft Visual Studio 2012 con Windows SDK per Windows 8. Supportato per app desktop Win32, app di Windows Store e Windows Phone 8 app.Requisiti
Piattaforma di destinazione | Windows |
Intestazione | directxpackedvector.h (include DirectXPackedVector.h) |