Compartilhar via


Função XMStoreUNibble4 (directxpackedvector.h)

Armazena um XMVECTOR em um XMUNIBBLE4.

Sintaxe

void XM_CALLCONV XMStoreUNibble4(
  [out] XMUNIBBLE4 *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 = {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];


Observe que esses valores não são normalizados. Para converter no formato RGBA 4/4/4/4, você deve dimensionar o vetor de entrada por (15.f, 15.f, 15.f, 15.f). Além disso, você provavelmente precisará girar o valor padrão .x = RED, .y = GREEN, .z = BLUE, .w = valor .x e .z do vetor de cor ALFA, já que o formato 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

Requisito Valor
Plataforma de Destino Windows
Cabeçalho directxpackedvector.h (inclua DirectXPackedVector.h)

Confira também

Funções de repositório de vetores da biblioteca DirectXMath