D3DXMatrixLookAtRH function (D3DX10Math.h)
Note
The D3DX10 utility library is deprecated. We recommend that you use DirectXMath instead.
Builds a right-handed, look-at matrix.
Syntax
D3DXMATRIX* D3DXMatrixLookAtRH(
_Inout_ D3DXMATRIX *pOut,
_In_ const D3DXVECTOR3 *pEye,
_In_ const D3DXVECTOR3 *pAt,
_In_ const D3DXVECTOR3 *pUp
);
Parameters
-
pOut [in, out]
-
Type: D3DXMATRIX*
Pointer to the D3DXMATRIX structure that is the result of the operation.
-
pEye [in]
-
Type: const D3DXVECTOR3*
Pointer to the D3DXVECTOR3 that defines the eye point. This value is used in translation.
-
pAt [in]
-
Type: const D3DXVECTOR3*
Pointer to the D3DXVECTOR3 structure that defines the camera look-at target.
-
pUp [in]
-
Type: const D3DXVECTOR3*
Pointer to the D3DXVECTOR3 structure that defines the current world's up, usually [0, 1, 0].
Return value
Type: D3DXMATRIX*
Pointer to a D3DXMATRIX structure that is a right-handed, look-at matrix.
Remarks
The return value for this function is the same value returned in the pOut parameter. In this way, the D3DXMatrixLookAtRH function can be used as a parameter for another function.
This function uses the following formula to compute the returned matrix.
zaxis = normal(Eye - At)
xaxis = normal(cross(Up, zaxis))
yaxis = cross(zaxis, xaxis)
-xaxis.x yaxis.x -zaxis.x 0
-xaxis.y yaxis.y -zaxis.y 0
-xaxis.z yaxis.z -zaxis.z 0
dot(xaxis, eye) -dot(yaxis, eye) -dot(zaxis, eye) 1
Requirements
Requirement | Value |
---|---|
Header |
|
Library |
|
See also