Compartilhar via


Função XMStoreShort4 (directxpackedvector.h)

Armazena um XMVECTOR em um XMSHORT4.

Sintaxe

void XM_CALLCONV XMStoreShort4(
  [out] XMSHORT4  *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

Essa função usa um vetor, prende-o ao intervalo -32767.0f a 32767.0f, converte os componentes em um formato inteiro com sinal e normalizado e grava os resultados em quatro valores inteiros curtos no endereço fornecido. O componente mais significativo é gravado nos dois primeiros bytes do endereço, o próximo componente mais significativo é gravado nos próximos dois bytes do endereço e assim por diante.

O pseudocódigo a seguir demonstra a operação da função .

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

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