Функция XMStoreShort4 (directxpackedvector.h)
Сохраняет XMVECTOR в XMSHORT4.
Синтаксис
void XM_CALLCONV XMStoreShort4(
[out] XMSHORT4 *pDestination,
[in] FXMVECTOR V
) noexcept;
Параметры
[out] pDestination
Адрес, по которому будут храниться данные.
[in] V
Вектор, содержащий данные для хранения.
Возвращаемое значение
Нет.
Remarks
Эта функция принимает вектор, зажимает его в диапазоне от -32767.0f до 32767.0f, преобразует компоненты в формат со знаком нормализованного целого числа и записывает результаты в четыре коротких целочисленных значения по указанному адресу. Наиболее значимый компонент записывается в первые два байта адреса, следующий наиболее значимый компонент записывается в следующие два байта адреса и т. д.
В следующем псевдокоде показана операция функции .
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
Требования к платформе
Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с Windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и приложений Windows Phone 8.Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | directxpackedvector.h (включает DirectXPackedVector.h) |