Функция XMStoreFloat3SE (directxpackedvector.h)
Сохраняет XMVECTOR в XMFLOAT3SE.
Синтаксис
void XM_CALLCONV XMStoreFloat3SE(
[out] XMFLOAT3SE *pDestination,
[in] FXMVECTOR V
) noexcept;
Параметры
[out] pDestination
Адрес, по которому будут храниться данные.
[in] V
Вектор, содержащий данные для хранения.
Возвращаемое значение
Нет.
Remarks
В следующем псевдокоде показана операция функции .
XMVECTOR N;
static const XMVECTOR Max = { 65472.f, 65427.f, 65427.f, 0 };
N = XMVectorClamp(V, XMVectorZero(), Max);
uint32_t m[3], e[3];
ConvertToFloat14( N.x, &m[0], &e[0]);
ConvertToFloat14( N.y, &m[1], &e[1]);
ConvertToFloat14( N.z, &m[2], &e[2]);
uint32_t T = XMMax( e[0], XMMax( e[1], e[2] ) );
pDestination->xm = m[0] >> (T - e[0]);
PDestination->ym = m[1] >> (T - e[1]);
pDestination->zm = m[2] >> (T - e[2]);
pDestination->e = T;
Если эти три компонента не близки друг к другу по величине, наибольшее значение задаст показатель, а остальные компоненты будут смещены к нулю.
Требования к платформе
Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и приложений Windows Phone 8.Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | directxpackedvector.h (включает DirectXPackedVector.h) |