XMStoreFloat3SE function (directxpackedvector.h)
Stores an XMVECTOR in an XMFLOAT3SE.
Syntax
void XM_CALLCONV XMStoreFloat3SE(
[out] XMFLOAT3SE *pDestination,
[in] FXMVECTOR V
) noexcept;
Parameters
[out] pDestination
Address at which to store the data.
[in] V
Vector containing the data to store.
Return value
None.
Remarks
The following pseudocode demonstrates the operation of the function.
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;
If the three components are not close to each other in magnitude, the largest value(s) will set the exponent and the other components will be shifted to zero.
Platform Requirements
Microsoft Visual Studio 2010 or Microsoft Visual Studio 2012 with the Windows SDK for Windows 8. Supported for Win32 desktop apps, Windows Store apps, and Windows Phone 8 apps.Requirements
Requirement | Value |
---|---|
Target Platform | Windows |
Header | directxpackedvector.h (include DirectXPackedVector.h) |
See also
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for