Função XMStoreU565 (directxpackedvector.h)
Armazena um XMVECTOR em um XMU565.
Sintaxe
void XM_CALLCONV XMStoreU565(
[out] XMU565 *pDestination,
[in] FXMVECTOR V
) noexcept;
Parâmetros
[out] pDestination
Endereço no qual armazenar os dados.
[in] V
Vetor que contém os dados a serem armazenados.
Valor retornado
Nenhum.
Comentários
O pseudocódigo a seguir demonstra a operação da função .
XMVECTOR N;
static const XMVECTOR Max = {31.f, 63.f, 31.f, 0.0f };
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];
Observe que esses valores não são normalizados. Para converter para o formato RGB 5/6/5, você deve dimensionar o vetor de entrada por (31.f, 63.f, 31.f, 1.f)
.
Além disso, você provavelmente precisará girar o valor padrão .x = RED, .y = GREEN, .z = valor .x e .z do vetor de cor AZUL, já que o formato de GPU é BGR (não RGB).
Requisitos de plataforma
Microsoft Visual Studio 2010 ou Microsoft Visual Studio 2012 com o SDK do Windows para Windows 8. Com suporte para aplicativos da área de trabalho Win32, aplicativos da Windows Store e aplicativos Windows Phone 8.Requisitos
Plataforma de Destino | Windows |
Cabeçalho | directxpackedvector.h (inclua DirectXPackedVector.h) |