Skip to content

Latest commit

 

History

History
107 lines (83 loc) · 3.79 KB

nf-directxmath-xmstorefloat4x3.md

File metadata and controls

107 lines (83 loc) · 3.79 KB
UID title description helpviewer_keywords old-location tech.root ms.assetid ms.date ms.keywords req.header req.include-header req.target-type req.target-min-winverclnt req.target-min-winversvr req.kmdf-ver req.umdf-ver req.ddi-compliance req.unicode-ansi req.idl req.max-support req.namespace req.assembly req.type-library req.lib req.dll req.irql targetos req.typenames req.redist ms.custom f1_keywords dev_langs topic_type api_type api_location api_name
NF:directxmath.XMStoreFloat4x3
XMStoreFloat4x3 function (directxmath.h)
Stores an XMMATRIX in an XMFLOAT4X3.
Use DirectX..XMStoreFloat4x3
XMStoreFloat4x3
XMStoreFloat4x3 method [DirectX Math Support APIs]
dxmath.xmstorefloat4x3
dxmath\xmstorefloat4x3.htm
dxmath
M:Microsoft.directx_sdk.storing.XMStoreFloat4x3(XMFLOAT4X3@,XMMATRIX)
12/05/2018
Use DirectX..XMStoreFloat4x3, XMStoreFloat4x3, XMStoreFloat4x3 method [DirectX Math Support APIs], dxmath.xmstorefloat4x3
directxmath.h
Windows
Use DirectX.
Windows
19H1
XMStoreFloat4x3
directxmath/XMStoreFloat4x3
c++
APIRef
kbSyntax
COM
DirectXMath.h
XMStoreFloat4x3

XMStoreFloat4x3 function

-description

Stores an XMMATRIX in an XMFLOAT4X3.

-parameters

-param pDestination [out]

Address at which to store the data.

-param M [in]

Matrix containing the data to store.

-returns

None.

-remarks

XMFLOAT4X3 is a row-major matrix form. This function cannot be used to write out column-major data since it assumes the last column is 0 0 0 1.

This function takes a matrix and writes the components out to twelve single-precision floating-point values at the given address. The most significant component of the first row vector is written to the first four bytes of the address, followed by the second most significant component of the first row, followed by the third most significant component of the first row. The most significant three components of the second row are then written out in a like manner to memory beginning at byte 12, followed by the third row to memory beginning at byte 24, and finally the fourth row to memory beginning at byte 36.

The following pseudocode demonstrates the operation of the function.

pDestination->_11 = M[0].x; // 4 bytes to address (uint8_t*)pDestination
pDestination->_12 = M[0].y; // 4 bytes to address (uint8_t*)pDestination + 4
pDestination->_13 = M[0].z; // 4 bytes to address (uint8_t*)pDestination + 8

pDestination->_21 = M[1].x; // 4 bytes to address (uint8_t*)pDestination + 12
pDestination->_22 = M[1].y; // 4 bytes to address (uint8_t*)pDestination + 16
pDestination->_23 = M[1].z; // 4 bytes to address (uint8_t*)pDestination + 20

pDestination->_31 = M[2].x; // 4 bytes to address (uint8_t*)pDestination + 24
pDestination->_32 = M[2].y; // 4 bytes to address (uint8_t*)pDestination + 28
pDestination->_33 = M[2].z; // 4 bytes to address (uint8_t*)pDestination + 32

pDestination->_41 = M[3].x; // 4 bytes to address (uint8_t*)pDestination + 36
pDestination->_42 = M[3].y; // 4 bytes to address (uint8_t*)pDestination + 40
pDestination->_43 = M[3].z; // 4 bytes to address (uint8_t*)pDestination + 44

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.

-see-also

DirectXMath Library Vector Store Functions